Posts
Showing posts with the label BDD
4 XP's Values
- Get link
- X
- Other Apps
C ommunication - Most desirable is face–to–face communication where we can talk, respond, gesture and draw on a whiteboard. Less desirable are written documents. XP stresses communication through practices such as pair programming. S implicity - This is a value of XP teams because it keeps their focus on creating a solution to the problem faced today, not the problem anticipated tomorrow.They remain constantly focused on doing the simplest thing that could possibly work. F eedback - XP teams value feedback, and the more immediate the feedback the better. This is achieved by Pair programming, Continuous Integration,Automated Testing and from customers. C ourage - XP teams value courage. For example, they have courage to refactor their code (because they have automated tests to back up that courage).They will use a metaphor and maintain a simple design through refactoring and test driven development.
8 Benefits of Unit Testing
- Get link
- X
- Other Apps
Programming with Confidence: unit tests increase your confidence about the code you are developing because the tests will clearly show if the changes you made caused the failure of some part of your code. This way you can fix the code, run the tests again, and if all pass, you can continue to work with the confidence that everything is still working properly. Continuous Integration of Code: unit testing ensures that the new features developed didn’t cause side effects on the code that was already working, so you have more confidence that the new features developed are working properly and also that they did not harm other parts of the software that previously had been already checked and perhaps even validated. Better confidence on the quality of your code: with unit testing, you are not only supposing that your code is working, but instead you are sure about it , because when all your tests are passing you know that your system is behaving e...
Top 10 skills for an Agile Tester
- Get link
- X
- Other Apps
Technical proficiency - automation can free the time of testers to do more exploration, which allows discovery. Investigative curiosity Observational skills Communication skills Writing skills and bug advocacy Domain knowledge Willingness to learn Social skills Humor Practice "Testing is questioning a product in order to evaluate it . Software testing is about revealing the unknown." Source- http://www.ebaytechblog.com/2013/01/31/becoming-a-world-class-tester/#.VTNlhNKeDGd http://java.dzone.com/articles/3-technical-skills-every
Agile testing: Exploratory testing vs Automation testing
- Get link
- X
- Other Apps
Automation Testing Automated tests are important, but they can't always address the complexity of finding potential problems related to usability, reliability, performance, compatibility and other quality criteria. Automated tests can't ensure the documentation matches the final product. They don't typically cover test scenarios past common use (like disfavored use or extreme use). Automated tests are great for testing specific aspects of functionality, but for complex applications they aren't so great at testing the platform dependencies (external hardware or software, deployment configurations). They don't often address issues related to operations (dealing with how data ages, alarming/alerting, logging, etc.). And automated tests aren't often focused on relationships between the product and time (concurrency, changing rates or transactions, or delays on input). Exploratory testing: Exploratory testing to help inform the project team about p...
7 questions to ask before planning to include any document in Scrum Agile
- Get link
- X
- Other Apps
100% CODE COVERAGE ISN’T THE GOAL
- Get link
- X
- Other Apps
Having 100% coverage doesn't guarantee the lack of defects—it only guarantees that all of your code was executed, regardless of whether your application behaves like it should. So rather than obsessing about code coverage, focus your attention on making sure that the tests you do write are meaningful.
Requirement gathering in Scrum
- Get link
- X
- Other Apps
Scrum framework is deliberately light in defining this as there are many existing practices is requirement gathering that work well. Scrum does not want to impose any one style and allow the organisation to choose what is best for them. Product Owner should - Establish a vision for the project to constrain the scope - Talk to his/her users and get high level business requirements. - Order them so they give value to the organisation and meet the scope of the project (or change the scope if not originally correct) - Work with the team to define what is a "Ready" requirement. - With team refine them into functional requirements that can actually be built - Constantly adapt as more knowledge is learnt or gained This is a continual process
SOLID principles
- Get link
- X
- Other Apps
S stands for SRP (Single responsibility principle):- A class should take care of only one responsibility. O stands for OCP (Open closed principle):- Extension should be preferred over modification. L stands for LSP (Liskov substitution principle):- A parent class object should be able to refer child objects seamlessly during runtime polymorphism. I stands for ISP (Interface segregation principle):- Client should not be forced to use a interface if it does not need it. D stands for DIP (Dependency inversion principle) :- High level modules should not depend on low level modules but should depend on abstraction.
More on BDD and TDD with examples, Thanks to codeproject.com
- Get link
- X
- Other Apps
User story- As a product owner, I would like to get an web based email program by which I can compose email on-line and can send email. TDD- This program should send email if To address is valid. This program should send email if CC address is valid even if To address is not valid This program should send email if BCC address is valid even if CC and To address is not valid. This program should send email even if the subject line is empty. This program should send email even if the body is empty. Problem in this - T here might be some more test cases if the option stated in 1, 2 and 3 are altered. Even there might be more test cases if he considers the format of the body of the email (like plain text, rich text or HTML). If the body is HTML, then he needs to think about the HTML encoding things. BDD- Given that a web based email module has been developed And I am accessing it with proper authentication When I shall write sender email address i...