Agile Testing interview question and Answers
ANS: Agile methodology is an approach to project management, typically used in software development. It helps teams respond to the unpredictability of building software through incremental, iterative work cadences, known as sprints. This methodology that inspired it: waterfall, or traditional sequential development.
2. What is Agile Testing?
ANS: Agile testing is a software testing practice which emphasizes testing from the perspective of customers who will utilize the system. Agile testing does not rigidly follow the pre-defined testing procedures, but rather focuses on testing iteratively against newly developed code until quality is achieved from an end customer’s perspective.
1. Use reusable checklists to suggest tests
2. Focus on the essence of the test rather than the incidental details
3. Use lightweight documentation styles/tools
4. Capturing test ideas in charters for Exploratory Testing
3. Why Agile?
ANS: Agile development methodology attempts to provide many opportunities to assess the direction of a project throughout the development lifecycle. Agile methodology could be described as “iterative” and “incremental.”
4. What are the key characteristics of agile testing methodology?
ANS: When adopting agile methods for testing, we ensure that the tests are done over every simple and small unit of code that is being developed.
With greater control over the progress that is being made in the development and a demons ratable code at hand every time, the agile methods of testing can prove very useful.
5. In what kind of environments do the agile testing methodologies prove very successful and where do they don’t?
ANS: The agile methods of testing can be a very good way of developing a project which has to have a periodic deliverable and which has a very few members in the team with fixed resources.
The Agile methods can help to get the maximum efficiency and stability in the products under development.
6. How can agile methods help in marketing and business aspects of a product?
ANS: The agile methods help in churning out workable code at every stage of development. So marketing of a product can be really effective as the updates to the software/product can come in handy in promotions. The Inspect and adapt approach that agile implements can help the product developers to change/add new functionalities over the previously developed layers. This adaptive approach again can help in keeping the product up-to-date in the market.
7. What is Agile software development?
ANS: Adaptable software creation, also known as agile software development. Agile development is a style of software development that emphasizes customer satisfaction through continuous delivery of functional software. Based on a variety of iterative development disciplines including extreme programming (XP), agile methods put developers to work in small teams to tight budgets and short timescales.
8. What are Agile Methods?
ANS:–> Agile Modeling
–> Agile Unified Process (AUP)
–> Agile Data Method
–> Essential Unified Process (EssUP)
–> Extreme programming (XP)
–> Feature Driven Development (FDD)
–> Getting Real
–> Open Unified Process (OpenUP)
–> Lean software development
9. What are the different approaches to testing on agile development projects?
ANS: 1. You want to test as early as you possibly can because the potential impact of a defect rises exponentially over time In fact, many agile developers prefer a test-first approach.
2. You want to test as often as possible, and more importantly, as effectively as possible, to increase the chance that you will find defects. Although this increases your costs in the short term, studies have shown that greater investment in testing reduces the total cost of ownership of a system due to improved quality.
3. You want to do just enough testing for your situation: Commercial banking software requires a greater investment in testing than membership administration software.
4. Pair testing, just like pair programming and modeling with others, is an exceptionally good idea.
10. In what case does the agile testing methodology differs from the other testing (development) methodologies?
ANS: Anytime applying agile testing methodology, the testers (developers) ensures that the whole process of testing (development) is broke into as small steps as possible and just a small unit of code is tested (developed) in each of this steps.
The team of testers (developers) is communicating consistently the results of their work, and change the short term strategy and even the development plan on the go, based on the results of agile testing. Agile methodology encourages flexible and rapid response to change which should lead to a better end result.
11. What are agile practices?
ANS: –> Test Driven Development (TDD)
–> Behavior Driven Development (BDD)
–> Continuous Integration
–> Pair Programming
–> Planning poker
12. What is Application Binary Interface (ABI)?
ANS: A specification defining requirements for portability of applications in binary forms across different system platforms and environments.
13. What is the biggest challenge when implementing Agile methods?
ANS: The most common specific challenges we see are simply the challenges of “turning the battleship” in a large organization to overcome the inertia of entrenched work practices and expectations and getting reoriented to do things in a different way. You have to muster the resolve to actually work in short iterations. You have to build frequently, at least every day, and you have to develop the discipline to keep the build healthy. You have to push each iteration to a releasable level of quality even if that’s hard to do at first. As before, this problem isn’t unique to Agile.
14. In what environments will Agile be most successful?
ANS: Full-blown Agile seems to me to be best suited for environments in which the budget is fixed on an annual basis, team sizes are fixed on an annual basis (because of the budget), and the project staff’s mission is to deliver the most valuable business functionality that they can deliver in a year’s time with a fixed team size. This mostly describes in-house, business systems dev organizations.
Full-blown agile (especially the flexible requirements part) is less-well suited to companies that sell software, because maintaining a lot of requirements flexibility runs counter to the goal of providing mid-term and long-term predictability.
15. What is the future of Agile?
ANS: Agile has largely become a synonym for “modern software practices that work. The future of Agile with a capital “A” is the same as the past of Object Oriented or Structured.