One of the most common situation, how will you start Testing without any functional requirement specification or any related documents? No wonder there are sometimes these kind of situations, ex. Resource attrition, no-documentation-with-agile-projects, etc. The only hope in these situations is ‘Exploratory Testing’. Since there are no documents to refer, refer the application directly ? Explore it, Test it. Gradually the flows make sense and we actually start testing it. Other option is to sit with Business analysts and developers to get application understanding – listening to experts instead of reading a document.
Any technology or tool is worthless unless it is being used by ‘some’ organization somewhere. It all starts from organizations adopting the new technology or a tool and then it gets popular slowly. In that sense QA Job Descriptions are a great source of current technology, i.e. practical tech. being used by IT organizations. Be it Selenium, Protractor, Appium, API tools, Big Data Testing, etc. Everything is embedded in the QA Job descriptions, you just need to mine some data 😉 But don’t worry. Continuing on our “JD Talks” series – we mine hundreds of QA Job descriptions to come up with latest tools, technology, languages and concepts. Let’s see what the second set of JDs talk about…
Exploratory testing, is all about discovery, investigation and learning. It’s like Machine learning, in concept. It empathizes on learning and adaptability. While the software is being tested, the tester learns things that together with experience and creativity generates new good tests to run. It emphasizes on personal freedom and responsibility of the individual tester. Exploratory testing is done without any specific plans and schedules. Test cases are not created in advance but testers check system on the fly. They may note down ideas about what to test before test execution. The focus of exploratory testing is more on testing as a “thinking” activity.
A peculiar but prominent distinction – Technical vs Domain Tester. Yeah! We know both are necessary for a successful QA career, but after certain years of experience your resume tend to incline towards one or the other. We are not Rajinikanth after all Who wins the Technical vs Domain Tester battle? Nah! It’s not a comparison between Deepanshu and Kanchan (we are together after all ;-)) but comparison between two different kinds of resume!
Software Testing is a process of verifying and validating an application against the specified requirements, mostly functional requirements. The non-functional aspects of an application such as performance are considered only after functional. Testing a software for both functionality and performance becomes a value addition to its quality before its launch into the market.
I have a strong functional test experience but no automation. I ‘know’ automation testing but don’t have the project experience. I am a Test lead but didn’t write any automation scripts. Analytical & logical but never did project coding. Found in-numerous bugs but didn’t prepare automation reports. Managed a big team but didn’t learn performance testing. Documented every report but didn’t produce framework guides. Enjoyed exploratory tests but didn’t script pre-defined test cases. Helped BAs and even developers (in debugging) but never developed automation framework. Understood domain & application flows but didn’t write code. Open to learning but no opportunity. Self-learned programming & tools, but didn’t get practical project experience. Passionate about Software testing but now it’s Software Developer in Test.
I first heard the term ‘Monkey Testing’ from a developer when I was 1 year old in IT industry. The developer was quite friendly & wasn’t confident enough about his code – “Hey, let’s do some Monkey Testing” he said. He sat with me and that was my first experience with practical Monkey Testing. Yeah! The name sounds funny, but this technique surely works (if you know the impacted areas). In this article let’s explore ‘Monkey Testing’ in detail.
Similar to Bollywood’s Karan-Arjun Shahrukh Khan and Salman Khan, in Software Testing too we have multiple important duos. Let’s have a look.
Types of Software Testing define the different aspects of the software which you are going to cover as part of your Test efforts, i.e. the objective. Will it be only Functional? Or are you going to measure the system performance as well? What about the database schema? What if the Banking application you are testing is secure or not? Will it work on Mobiles as well? There are numerous Testing Types one can opt for now-a-days, for e.g. Functional, Security, Performance, Compatibility Testing, Database Testing, etc.