
Quality Assurance Image Library
This is my carefully curated collection of Slack images, designed to perfectly capture those unique QA moments. Whether it's celebrating a successful test run, expressing the frustration of debugging, or simply adding humor to your team's chat, these images are here to help you communicate with personality and style.
NEVER Underestimate the Power of a Good Test Case
Software testing is a critical element of any software development process. The quality and effectiveness of your software have a lot to do with the quality and effectiveness of your tests. It is often believed that testing is something that can be done quickly, cheaply, and at no risk to the rest of the project. In reality, however, this is not always the case. Many organizations underestimate the power of a good test case because they don't see it as something they need to expend time or effort on ' or so they think. Consider these reasons why you should never underestimate the power of a good test case:
You can write a bad test case, but you can't run a bad build.
If you're writing tests, you'll be creating or modifying your build pipeline to support the testing effort. You might consider the tests to be something like an extra feature that you can add to the build and then forget about, but that's not how it works. A bad test case will stop the build, just like a bad feature. And, just like a bad feature, there's no way to go back and run a bad test. You have to go back and rewrite the test or delete it, and if you forget to do one or the other, you'll be stuck with a bad test being marked as passed.
No one will remember your good code if there are no good tests.
No matter how good your code is, if there are no good tests, no one will remember it. If there are no tests, people will conclude (sometimes rightly so) that you are a developer who doesn't know what they're doing. If there are poor tests, people will conclude that you're a poor developer. Tests demonstrate that you know what you're doing and that you're doing it right. If you have a good test suite, you can refactor with confidence. If you are introducing a new feature, you can demonstrate that it works correctly. If you are fixing a bug, you can show that your fix works. Tests are proof that your code works. Even if your code is better than anyone else's, no one will know because there are no tests to prove it.
Good tests are your only real protection against regression.
If you don't have any tests, you don't have a good way to know whether you're breaking functionality or not. If you are fixing a bug or introducing a new feature, you don't have a good way of knowing if you've broken something or not. You don't have any idea whether your changes are causing any other functionality to fail. If it's good code, though, it's most likely that it's not.
Good tests help you to focus on what's most important.
The best way to know if your code is well-written and easy to maintain and extend is to have good tests. Good tests indicate that your code does what it's supposed to, so there is no need to worry about it. Good tests allow you to focus on the things that you should be focusing on. You don't have to worry about breaking existing functionality or introducing new bugs. You don't have to worry about if your code is easy to maintain or if it's scalable. Instead, you can focus on the things that matter. For example, you can focus on improving the design, architecture, and robustness of your code. You can focus on making your code extensible, reusable, modifiable, and maintainable. You can focus on making your code better without having to worry about breaking something or introducing a new bug.
Good tests lead to better design and architecture decisions.
Good tests ensure that your code is robust and extensible. Good tests ensure that your code is scalable and can grow as your project grows. Good tests ensure that your code is well-designed. These are all important aspects of a software project. When you are designing, architecting, and coding with good tests in mind, you are making better decisions than you would otherwise. You are making decisions that are informed by your tests, so you know that whatever you do, your tests will confirm that you've made the right decision.
A well-written test is the best piece of documentation you can have.
A well-written test is a first-hand account of your code of what it does and does not do. A well-written test is a record of your code's functionality and behaviors. A well-written test is a record of your code's design (even if it's a bad design). A well-written test is a record of your code's architectural decisions. If you were to write the documentation for your code, you would write down a summary of your code's functionality, an overview of your code's design, and an explanation of your code's architectural decisions. If you were to write actual documentation, you would also have to write down things like installation instructions, usage instructions, and troubleshooting instructions ' all things that your tests are better suited to do. A well-written test is the best piece of documentation you can have.
So, don't ever underestimate the power of a good test case!
There are several reasons why you should never underestimate the power of a good test case. These reasons include the following: - You can write a bad test case, but you can't run a bad build. - No one will remember you're good code if there are no good tests. - Good tests are your only real protection against regression. - Good tests help you to focus on what's most important. - Good tests lead to better design and architecture decisions. - A well-written test is the best piece of documentation you can have. Remember, though, that testing is a critical element of any software development process. The quality and effectiveness of your software have a lot to do with the quality and effectiveness of your tests. It is often believed that testing is something that can be done quickly, cheaply, and at no risk to the rest of the project. In reality, however, this is not always the case. Many organizations underestimate the power of a good test case because they don't see it as something they need to expend time or effort on ' or so they think.
4 Tips for Quality Assurance Testing
Quality assurance testing can be a challenging process. It requires a lot of attention to detail, and it's easy to miss something that could lead to bugs in the software or QA test plan later on. Since you want your final product to be as bug-free as possible, you need to test all parts of your software thoroughly. To do this, you need to create a comprehensive quality assurance testing strategy that focuses on different areas of the product. However, most QA strategies will have some similarities because they are based on best practices for this type of testing. If you're working with software, there are some tips for QA testing that you probably won't hear very often. These might seem like common sense, but they can make a big difference in your final results.
Always Test the User Experience
This may seem obvious, but it's easy to forget in the heat of the moment. You might focus on the bugs you need to fix or the functionality that's missing, but don't forget to check the experience as a whole. It's important to make sure that the design is intuitive and easy to use. This will make your product more usable, which in turn leads to higher conversion rates. For example, if you're creating an eCommerce site, you need to test the user experience from start to finish. This includes testing how easy your site is to browse, how easy it is to add items to the cart, and how straightforward the checkout process is. You also need to check that your site has a clear design and doesn't have any unnecessary distractions.
Automate as Much as You Can
If you're testing software, you should automate as much of the process as you can. This ensures that every test is consistent and gives you reliable results. It's also a lot easier to check that everything is working correctly if you're not manually doing it. You can automate several parts of your testing process. For example, you can use a software testing tool to check that your website is responsive. You can also use Selenium to automate your functional tests. This makes it easier to check that all parts of your software are functioning correctly. If you can't automate parts of your testing process, consider hiring someone to do it for you. For example, you can hire an expert to conduct automated usability tests. This frees up your team members to focus on other areas of the testing process.
Confirm Your Assumptions with usability testing
Usability testing is one of the best ways to confirm your testing assumptions. To do this, you need to create a plan for usability testing and recruit a few subjects. You can test using a usability lab or by bringing in some people off the street. You can also use usability testing to check if your design is intuitive. You can also use it to check if your product satisfies the user's goals. If you're creating a website, recruiting users to test your design is easy. All you need to do is post an ad online, and you'll have plenty of volunteers in no time. For example, if you're creating an online store, you can test how easy it is to find the products the user is looking for. You can also test how easy it is to add items to the cart and check out.
Make Sure You're Testing the Right Things
When you're creating a quality assurance strategy, you need to make sure that you're testing the right things. This means you should prioritize what you test and find ways to automate parts of the process. If you're testing software, for example, you should prioritize functional tests over visual tests. If you're testing a website, you can prioritize certain pages over others. For example, you might want to test the homepage, a checkout page, and a login page. You should also prioritize functionality over design. This means you should focus your attention on functionality like speed, load times, and functionality.
Summing up
It's important to remember that quality assurance testing is a process. It's a process that needs to be followed meticulously to ensure that you don't miss any critical bugs. You'll want to start your testing process with a good idea of what your software needs to do and how it operates. From there, you can create a thorough testing strategy that covers all the bases. Always test the user experience, confirm your assumptions with usability testing, and make sure you're testing the right things. With these tips in mind, you'll be well on your way to a successful testing process.
Engineer Sayings
Things that QA Engineers may hear when they discover a bug - usually late in the test cycle.
QA Meme Library
Here are various QA Meme that was created in June 2022. SEe all the files in the QA Image Library.
https://www.cryan.com/qa/graphics/2022/WooHooReleaseDay.jpg
https://www.cryan.com/qa/graphics/2022/BuildReadyMeme.jpg
https://www.cryan.com/qa/graphics/2022/FoundBug.jpg
https://www.cryan.com/qa/graphics/2022/DevQACode.jpg
https://www.cryan.com/qa/graphics/2022/NoFridayRelease.jpg
Software Quality Matters
As a professional, it's important to you that the software you use is of the highest quality. But what does that mean, exactly? And how can you be sure your software is up to snuff?
There are a few key things to look for when assessing the quality of software: first, how well does it meet your needs and expectations? Second, how reliable and stable is it? And finally, how well does it perform under pressure?
If a piece of software doesn't meet your needs or expectations, then it's not worth using no matter how high its quality may be. You need something that's going to work for you, not against you. So always test out any new software before committing yourself fully.
Reliability and stability are also key factors in determining quality. Software that crashes or freezes all the time isn't going to do you much good - in fact, it might even end up costing you more in lost productivity than if you'd just gone with a lower-quality option. Make sure to check out reviews online before making your decision; they can be helpful in gauging overall reliability.
The Inquiry Method for Test Planning
The Inquiry Method for Test Planning is a process that helps you plan your tests by identifying and investigating the test objectives. This method can be used to develop both formative and automated assessments.
To use the Inquiry Method for Test Planning, you first need to identify the test objectives. These are specific goals that you want test cases to achieve as a result of running your test. Next, you need to investigate how best to assess each objective. This involves thinking about what type of question or activity will best measure the test cases - understanding of the objective. Finally, you need to create a plan for running the tests and scoring the final responses.
The Inquiry Method for Test Planning is an important tool for creating effective release risk assessments. By beginning with clear objectives and then investigating how best to measure the release success, this process ensures that tests reflect what developers have implemented in the release. Additionally, using an inquiry-based approach allows QA the flexibility in developing assessment items customized to their own test case goals and needs."
Sprint Velocity
Velocity is one of the most important measures of success in agile development. The higher the velocity, the more software functionality a team can deliver, and the more value is created for customers. However, there are many factors that can affect velocity, so it's important to track it carefully and adjust as needed.
There are several ways to measure velocity: in story points, hours, or ideal days. Some teams prefer to use story points because they're relative and don't depend on how long something takes to complete. Other teams prefer to use hours or ideal days because they're more specific and easier to track.
No matter which method you choose, it's important to keep track of your team's velocity over time so you can identify any trends or changes that might be affecting your ability to deliver value for your customers
Things I Learned
Velocity is a measure of how much the team can complete in an iteration. It is generally measured in terms of the number of user story points completed in a sprint.
The higher the velocity, the more work the team can complete. This allows for shorter iterations and faster feedback cycles, which leads to better products.
While velocity should not be used as the only metric for determining whether or not a team is successful, it is an important indicator that should be tracked over time.
Velocity is not useful as a team measure until you have completed at least three sprints with a fixed team of people.
Sprint retrospective meetings should always focus on ways to improve the team's velocity.
Things to Consider at a Retrospective Meeting
Three good questions to ask:
- Is the team delivering at maximum velocity?
- What is slowing down the team to deliver more quality code?
- What can the team do differently to improve velocity?
BugWalk
If your looking for a fun way to learn JavaScript, try BugWalk. This simple JavaScript will add bugs to any website.
Developers can make all sorts of adjustments such as; the amount of time the bugs appear, the speed of the bugs, mouseover effects, and more.
How Can You Learn from This?
QA Developers can manipulate the JavaScript file and learn various parts of JavaScript. This is also useful to learn how to use JavaScript with sprite.
To get started, download the project from GitHub and start playing around with it. The nice thing is that you don't need to be connected to the internet to play around with the project.
XPath Validation
Selenium automation requires getting the XPath to find elements on the page. There are all sorts of third-party tools that can help make the process easy. Did you know that Chrome and Firefox have a built-in tool that can show you the value of a given XPath?
Discovering the Value of a Given XPath
There is a hidden variable: $x while echos the content of given XPath. Example Use:
$x("//BODY")
Four Things I Learned
In Chrome, If you just type in "$" in the console, you'll see all the available commands. However, Google doesn't show $x in that list. Firefox does show that $x is a valid variable.
The $x XPath Validation is very useful to discover the value of an object. Especially useful when automation is trying to click on something and it's not working. This is also useful when running automation against different browsers - you can see the different XPATH values each browser takes.
I have used this after an automation failure, with the browser still open, I would open the console and then use the $x to see the value of that location.
In Chrome, When you mouse over the 'i" the selected area is highlighted. In Firefox it's the cog icon.
Canned Responses in Jira
Canned Responses in Jira is a powerful feature that can save you time and improve your productivity. It allows you to create and store reusable responses for common tasks, such as creating issues, assigning them to someone, or commenting on them. This can be a huge time-saver if you need to respond to the same types of issues frequently.
To create a canned response:
- In the issue's Quick Actions menu, select Create Canned Response...
- Enter your response text in the editor window and click Save .
- The canned response will now appear in the list below. You can edit it at any time by clicking its name. To use it in an issue, just type $ followed by its name (e.g., @$yCannedResponse).
This is useful for QA to create custom responses to testing results. This helps maintain some stability in the testing results.
Sample of where the Canned Reponse is in the comment text dialog box.
Some Example Canned Responses
Issue Ready |
Failed Issues |
Any Testing Steps? |
About
Welcome to QA!
The purpose of these blog posts is to provide comprehensive insights into Software Quality Assurance testing, addressing everything you ever wanted to know but were afraid to ask.
These posts will cover topics such as the fundamentals of Software Quality Assurance testing, creating test plans, designing test cases, and developing automated tests. Additionally, they will explore best practices for testing and offer tips and tricks to make the process more efficient and effective
Check out all the Blog Posts.
Blog Schedule
Saturday | Internet Tools |
Sunday | Open Topic |
Monday | Media Monday |
Tuesday | QA |
Wednesday | Pytest |
Thursday | Playwright |
Friday | Macintosh |
Other Posts
- Falsifiability
- Incognito in Chrome
- 4 Tips for Quality Assurance Testing
- Boo! Common Frightful Phrases in Software QA
- CHiPS and QA
- Engineering Liability of Code
- Opera and Maxthon
- Jira Sprint Board Keyboard Shortcut
- How to create great CTAs using A/B testing
- Browser Extensions for QA
- QA Fail: Mass Pike Sign
- GitHub Tips for QA
- Find Empty Name Ids
- Happy Halloween!
- Chrome Requests Response Headers