11

my colleagues suggest me to learn and create a fully functional - generic framework which any team can use? I suggest you don't. Your coworkers suggest you to start over-engineering. It is fine to experiment. Automate a test, automate another one. Maybe a reusable abstraction emerges. Maybe this becomes a reusable framework. Practise the YAGNI (You aren'...


4

I think you are missing out the definition of "Framework" https://smartbear.com/learn/automated-testing/test-automation-frameworks/ A framework is comprised of a combination of practices and tools that are designed to help QA professionals test more efficiently. These guidelines could include coding standards, test-data handling methods, ...


4

Here's an idea: Install Linux. I recommend using a virtual machine such as VirtualBox, which can run on a normal Windows box, to install a popular, well-maintained and lightweight system such as Lubuntu or Bodhi. Using a virtual machine means that you can run it as an app on your Windows computer; and this method will shield both the host and guest machines ...


3

You are trying to access element instance that was created using the previous browser instance. The workflow is as follow, You imported the page object instance at the start of the spec using require A browser instant is created in the onPrepare Using that instance your page object model gets the element object But on next 'It' the browser restarts but the ...


2

Are there any courses/books online to learn automation framework design in Java? In my case, I started learning with online videos about Java (focus in selenium). In my case, it was more helpful (and to be honest more convenient to learn via online video tool) I started with the link from Angie Jones Courses. There you will find good online videos. Also ...


2

I think the first sentence on Wikipedia says it clearly enough: In computer programming, a software framework is an abstraction in which software providing generic functionality can be selectively changed by additional user-written code, thus providing application-specific software. [ https://en.wikipedia.org/wiki/Software_framework ] To say it in ...


2

You can override you private void instantiateChromeDriver() method in your child class (you have to change access modifier of the method in base class in order to do so) where you can instantiate the driver with the options you need in your child class. Here is a simple model of your architecture: Base class with its own initialization public class Base { ...


2

Fair warning: this is my opinion based on practice: if it does what you need and doesn't introduce too much of a maintenance burden, it's not bad practice. Your goal is to build scripts that a relatively easy to extend, relatively easy to debug, and relatively easy to maintain. If capybara works for you, then it's good.


2

As a shorter way, Its a base structer or the foundation to write automation test scripts for different componets (web, mobile ... etc). A good framework will provide solutions for some of below limitations or the issues. Handling scripts and data separately. Creation of libraries. Extensibility issues. Maintenance issues. Reporting issues.


1

Your syntax is wrong and you are clicking a wrong tag, and also you have to import By class You should click-Button element: from selenium.webdriver.common.by import By driver.find_element(By.XPATH, '//button[@class="btn btn-sm btn-success pull-right"]').click()


1

Technology wise it depends on who might use it, we have developed test suites with protractor but they are rule out because there are no many automation tester who are adept with javascript. Go with the technology you or your team feel more comfortable with. edit: misread the question.


1

1. you are not passing any driver instance to the Dashboard DashboardPage 2. You are trying to access local variable 'driver' which is not initialized yet Solution: Add : public void launchapp() { driver = new Setup().initializeAppiumServer(); } Or pass the already initialized driver to the dashboard: in your dashboard class also or pass ...


1

Refer to this question: https://stackoverflow.com/q/34152390/6793637 chrome.window.onRemoved.addListener(), works only when a chrome process is running. The `driver.quit()` closes all the chrome processes. Use driver.close() or Could you try this : // Initializing instance of Firefox WebDriver driver = new ChromeDriver(); wait = new ...


1

Since you are just getting started with your test automation journey, imagine you are given an application and some test scenarios to automate. You use your knowledge of Selenium and TestNG and you start creating few Classes and Methods to perform operations on the UI controls as per your test cases. Using TestNG you manage to execute those tests and you ...


1

I've never done with with Python, but, have a few times with C#. I know you won't be able to copy/paste this, but, will maybe help point you in the right direction string cookieNameString = _driver.Manage().Cookies.GetCookieNamed("actualCookieName").Value; cookieNameString = "my new cookie value"; Cookie actualCookieName = new ...


1

I realized I needed to instantiate a Remote Web Driver in order to obtain functionality remotely. Solved. if(browser.driver instanceof RemoteWebDriver) { new FlashPolicyHelper((RemoteWebDriver) browser.driver).addSite(odysseyURL) } browser public class FlashPolicyHelper { private final RemoteWebDriver driver; public FlashPolicyHelper(RemoteWebDriver ...


Only top voted, non community-wiki answers of a minimum length are eligible