Your boss doesn't want a flat "No" or to hear their request is impractical.
They want to reduce the risk of releasing changes to the application.
Make your boss choose your priorities, that is one of the roles of a manager.
Add scenarios based on team knowledge and work with your boss to rank them by risk.
Implement top priority scenarios
Go back to ...
A hard coded sleep statement is generally supposed to represent some sort of mocked delay in the application that doesn't exist during testing.
The harmful aspect of this is that a hard coded value can't represent the complexity that actually exists in what it's mocking.
Take for example a network delay. Your production system usually takes 4 seconds to ...
John Ruberto wrote an article some years ago on Stickyminds entitled, "Is 100% Unit Test Coverage Enough?". The article can be found here:
In it he presents the argument that there are different kinds of coverage. One could cover 100% of requirements, but that doesn't include ...
Given that the customer insists, I'd recommend using a virtual environment with IE5 installed, and then search for automation solutions that can work in that environment. This will be a challenge: you will need something that can operate on the elderly operating system (I think XP can run IE5, but I'm not sure about anything newer) and preferably something ...
Another approach (or part of one).
Before proceeding ask for a sign-off on a document that clearly states the security risk this presents to the organization and its customers and that they acknowledge that risk. This might get more attention, though it is obviously a little aggressive (or may be perceived to be that way). Adjust approach as needed for the ...
I suspect this is not a TestNG issue. I would start by trying to produce a minimal set of tests that, when run together, cause failures. After that, I would explore these possibilities:
Inter-test interaction changes test-application interaction: It is possible that interaction between your tests changes how your test interactions with your application. ...
How to get started with Selenium: A Brief Overview
So you want to automate browser-driven tests, and you're not sure where to get started. You've heard of this "Selenium" thing, and you think it's what you want, but you can't be sure. Fret not! Here's a quick rundown of what you're looking at and how to get going. This is mostly adapted from two ...
I have struggled with this issue in several companies. It always seems to come up at some point and then be a major issue over time.
I too have walked the path of sleeps, polling waits, check for ajax done, check for js done, check for animations done, etc. They sometimes help with some of the errors but it always seems that just when you think you have ...
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'...
You've got quite a few questions in your one question, but overall it sounds like what you want answered is: How can I learn to write automation so I can switch from a 100% manual testing role into a role that involves writing automation. I'll get to answering that one, but first...
Honestly, if you are already manually testing in your current position, ...
To broadly address your question, just pick some test cases with simple interactions that aren't very dynamic and automate those. Trial, error, and practice will get you there.
Is Java mostly used for Selenium tests? Do you recommend it over C#?
According to StackOverflow, there are more Selenium tagged questions in Java than any other language (as of ...
I have had exactly the same assignment earlier this year, for APIs written in C#. Options I have (tried to) build a PoC for were:
Own framework built in C# using either RestSharp or HttpClient.
In agreement with the test lead and architecture team, we have decide to use our own C# API testing framework for the following reasons:
Ease of ...
The main harm occurs when the time value you use in your Sleep statement isn't appropriate for the current instance of the test.
Your script might Sleep for 4 seconds, because that's how long it took for some important object to appear when you created your script. Then the script moves on with actions using that new object.
But when you re-run the script, ...
Flaky test is well-known pain point:
How to deal with flaky tests that have intermittent failures? (on SO, and links from it)
How to deal with flaky tests that have intermittent failures? and Where do our flaky tests come from? on Goggle Blog.
How to fix Flaky Test Automation - another collection, thanks to @Rsf
Because so many extremely smart people were ...
It's always good to use numbers to make your point-
There are N models and sub models of iPhones (for some applications you should also count the phone's network sub-type), each with M available iOS versions and sub versions (this is not entirely accurate, some models and iOS versions don't work together, but never mind that now)
Older iOS versions needs ...
You could start with unit tests, while the application is being developed. In Java you can use JUnit for this.
If you don't have a fully functioning system yet, you can use mocking to mock objects. In Java this is done with Mockito or JMockit.
Look into unit testing and TDD (Test Driven Development).
Once you are ready to integrate different components, ...
Automate a test in the simplest way possible
Automate another test
Repeat and evolve into a robust framework
Your plan sounds traditional and will probably result in a lot of research and over-engineering. Start simple and let your tests form around your application and business. Tackle uncertainties as soon as possible. Don't make your plan ...
Your POC report is destined for the manager who wants to know the outcome of your investigation. More importantly, he'll have to decide whether to continue with the POC results, do another one (with different technology, for example) or stop investing in test automation at all.
So, try to make your POC report as informative and comprehensive as possible.
I believe its a very good practice, In my company we do exactly the same, I assume this is only because of historical reasons (in our case) but in general, you will try to have the smallest number of the system possible so for the medium future, it probably makes sense to unify test automation script with the source code as the same version.
It isn't necessary to have strong - or any - coding skill to perform software testing or to be a highly skilled tester. No tool will ever replace the ability of a skilled manual tester to observe something that is not quite right in some way and trace the problem.
When it comes to automation, things get interesting. There are numerous tools that claim to ...
My first advice is to not write automated tests for pages that change frequently. You may be better off testing those pages manually.
If you insist on automation, think about which aspects of the pages do not change, and write classes to model those aspects. For example, if forms always consist of text fields and a submit button, you can write a class to ...
Although, this question is too broad to answer but in short I can say 'It depends upon number of factor which tool you want to use'.
Scope of Automation
Skillset available with team
Complexity/functionalities of automation
Test case management
Tool support, etc.
Don't just compare the tools theoretically, use them for ...
From this and from your other question about using Excel as input for Selenium, I have a feeling that you need to improve your general programming skills. If you are competent programmer, selenium is just yet another library you have to use to make your program to do what you want it to do. Not trivial, but not rocket science either (for a competent ...
Page object is an design pattern.
First you should understand the difference between framework and design pattern.
For that refer this link.
To understand page object design pattern refer this link.
Use Unofficial site for more detail : Do a Google search, you will get a lot info on this link.
Page Object Pattern
A partial answer to your many questions:
Jenkins - yes, Jenkins is used by many organizations for their CI pipeline, including UI automation like Selenium scripts.
Typical Selenium Project - there is no such thing, any more than there is a typical website. The best you are going to get is broad guidelines such as:
Don't Repeat Yourself (DRY) - If you find ...
In software, there are a couple of ways to wait for an event to occur. One way is to cause the event to notify you. Sometimes that is possible, sometimes not. Another way is to poll: you wait a while, check whether the event has occurred and if it hasn't, you do it again.
A variation of polling is to wait a while and then assume that the event has ...
IMHO, a team lead who is a developer with less knowledge in testing, is the wrong kind of person to be selecting a test tool.
Do you have any QA Professionals on your team - perhaps someone with test tool experience? Or, lacking that do you have anyone on the team who will actually be tasked with using a test tool? I would suggest you turn to them.
Oh Boy! you might start another one of the Java vs Python vs Other language war. These are kind of question which are always answered with preference for a specific language in mind.
For me- I would prefer Python over Java, because of one reason : Its simplicity.
Our test team comprises of people who have little programming experience. However, most of ...