Static vs Dynamic Testing

Source:
https://www.browserstack.com/guide/static-testing-vs-dynamic-testing#:~:text=Static%20testing%20focuses%20on%20reviewing,to%20find%20bugs%20during%20runtime.&text=It%20is%20performed%20at%20the%20later%20stage%20of%20the%20software%20development.

This article is titled “Static vs Dynamic Testing” and explains the differences between them and how they allow for the development of quality software. Static testing is testing where the application isn’t being actively used. Code is manually read through to search for errors. As a result, a computer is not necessarily required for this form of testing as design documents containing the code can be reviewed. This kind of testing is done before the code is executed and early in the development process. The benefits to static testing are that defects are able to be found earlier in the process, it’s usually more cost-effective than other testing techniques, leads to more maintainable code, and encourages collaboration between team members. However some disadvantages of static testing are that not all of the issues could be found until the program/application actually runs, it depends on the experience of the reviewers for it to be effective, and it usually has to be done alongside dynamic testing to uncover other potential issues.

Dynamic testing involves giving an application input and analyzing the output. Code is being compiled in a run-time environment. This form of testing also relies on the expertise of the reviewers as deep knowledge of the system is required to understand how and why a system reacts based on the input. The advantages of dynamic testing are that runtime errors, memory leaks, and other issues that only come to fruition during code execution are revealed, helps verify that the software is working as intended by the developers, and ensures that all parts of the system work together appropriately. However some disadvantages of dynamic testing are that it can be time-consuming, may not cover all possible scenarios, and may be difficult to test uncommon instances in the program. 

Overall it is important to realize that static and dynamic testing are both important in their own ways and emphasize the importance of performing various kinds of testing methods to ensure an application works as intended. I chose this article because we discussed these topics in class and figured learning more about them would be beneficial. 

From the blog CS@Worcester – Shawn In Tech by Shawn Budzinski and used with permission of the author. All other rights reserved by the author.

Boundary, Equivalence, Edge and Worst Case

I have learned a lot about Boundary Value Testing and Equivalence Class Testing. Equivalence Class testing can be divided into two categories: normal and robust. The best way I can explain this through example. Let’s say you have a favorite shirt, and you lose it. You would have to look for it but where? Under the normal method you would look in normal, or in a way valid, places like under your bed, in your closet or in the dresser. Using the robust way, you would look in those usual spots but also include unusual spots. For example, you would look under your bed but then look under the kitchen table. You are looking in spots where you should find a shirt (valid) but also looking in spots where you should not find a shirt (invalid). Now, in equivalence class testing robust and normal can a part of two other categories: weak and strong. Going back to the shirt example, a weak search would have you looking in a few spots, but a strong one would have you look everywhere. To summarize, a weak normal equivalence class test would have you look in a few usual spots. A strong normal equivalence class test would have you look in a lot of spots. A weak and strong equivalence class test would act similarly to the earlier two, but they would have you look in unusual spots.

Boundary value testing casts a smaller net when it comes to testing. It is similar to equivalence class testing but it does not include weak and strong testing. It does have nominal and robust testing. It also has worst-case testing which is unique to boundary testing. I don’t know much about it, so I looked online.

I used this site: Boundary Value Analysis

Worst-case testing removes the single fault assumption. This means that there are more than one fault causing failures which leads to more tests. It can be robust or normal. It is more comprehensive than boundary testing due to its coverage. While normal boundary testing results in 4n+1 test cases, normal worst case testing results in 5n test cases. Think of worst-case testing as putting a putting a magnifying glass on something. From afar you only see one thing but up close you can see that there is a lot going on. This results in worst case testing being used in situations that require a higher degree of testing.

I have learned a lot. I have learned about boundary testing and how it differs when it is robust or normal. I have learned about equivalence class testing and how it varies when it is a combination of weak, normal, robust or strong. I have also learned about edge and worst-case testing. This is another step towards my coding career.

From the blog My Journey through Comp Sci by Joanna Presume and used with permission of the author. All other rights reserved by the author.

CS-443 Blog – Test Doubles

 CS@Worcester CS-443


What is a Test Double? | Types & Best Practices 

This blog reviews the article “What is a Test Double? | Types & Best Practices”, by Ritika Kumari. 


This article on Test Doubles provides a comprehensive overview of their role in software testing.  It emphasizes how test doubles act as substitutes for real components, enabling developers to test code in isolation without relying on dependencies. The article highlights the importance of test doubles in scenarios where dependencies are unavailable, incomplete, or unsuitable for testing environments. 


Kumari also discusses the various types of test doubles, including mocks, stubs, spies, fakes, and dummies, each serving unique purposes in the testing process. She provides practical examples, such as using a test double for a payment gateway API to simulate responses like successful payments, failures, or network errors.


I think this was a well made article that does a nice job at explaining the usefulness of Test Doubles. I learned that they give you more control, flexibility, and reliability in your testing efforts.


From the blog George C Blog by George Chude and used with permission of the author. All other rights reserved by the author.

CS-443 Blog – Test Doubles

 CS@Worcester CS-443


What is a Test Double? | Types & Best Practices 

This blog reviews the article “What is a Test Double? | Types & Best Practices”, by Ritika Kumari. 


This article on Test Doubles provides a comprehensive overview of their role in software testing.  It emphasizes how test doubles act as substitutes for real components, enabling developers to test code in isolation without relying on dependencies. The article highlights the importance of test doubles in scenarios where dependencies are unavailable, incomplete, or unsuitable for testing environments. 


Kumari also discusses the various types of test doubles, including mocks, stubs, spies, fakes, and dummies, each serving unique purposes in the testing process. She provides practical examples, such as using a test double for a payment gateway API to simulate responses like successful payments, failures, or network errors.


I think this was a well made article that does a nice job at explaining the usefulness of Test Doubles. I learned that they give you more control, flexibility, and reliability in your testing efforts.


From the blog George C Blog by George Chude and used with permission of the author. All other rights reserved by the author.

CS-443 Blog – Test Doubles

 CS@Worcester CS-443


What is a Test Double? | Types & Best Practices 

This blog reviews the article “What is a Test Double? | Types & Best Practices”, by Ritika Kumari. 


This article on Test Doubles provides a comprehensive overview of their role in software testing.  It emphasizes how test doubles act as substitutes for real components, enabling developers to test code in isolation without relying on dependencies. The article highlights the importance of test doubles in scenarios where dependencies are unavailable, incomplete, or unsuitable for testing environments. 


Kumari also discusses the various types of test doubles, including mocks, stubs, spies, fakes, and dummies, each serving unique purposes in the testing process. She provides practical examples, such as using a test double for a payment gateway API to simulate responses like successful payments, failures, or network errors.


I think this was a well made article that does a nice job at explaining the usefulness of Test Doubles. I learned that they give you more control, flexibility, and reliability in your testing efforts.


From the blog George C Blog by George Chude and used with permission of the author. All other rights reserved by the author.

CS-443 Blog – Test Doubles

 CS@Worcester CS-443


What is a Test Double? | Types & Best Practices 

This blog reviews the article “What is a Test Double? | Types & Best Practices”, by Ritika Kumari. 


This article on Test Doubles provides a comprehensive overview of their role in software testing.  It emphasizes how test doubles act as substitutes for real components, enabling developers to test code in isolation without relying on dependencies. The article highlights the importance of test doubles in scenarios where dependencies are unavailable, incomplete, or unsuitable for testing environments. 


Kumari also discusses the various types of test doubles, including mocks, stubs, spies, fakes, and dummies, each serving unique purposes in the testing process. She provides practical examples, such as using a test double for a payment gateway API to simulate responses like successful payments, failures, or network errors.


I think this was a well made article that does a nice job at explaining the usefulness of Test Doubles. I learned that they give you more control, flexibility, and reliability in your testing efforts.


From the blog George C Blog by George Chude and used with permission of the author. All other rights reserved by the author.

CS-443 Blog – Test Doubles

 CS@Worcester CS-443


What is a Test Double? | Types & Best Practices 

This blog reviews the article “What is a Test Double? | Types & Best Practices”, by Ritika Kumari. 


This article on Test Doubles provides a comprehensive overview of their role in software testing.  It emphasizes how test doubles act as substitutes for real components, enabling developers to test code in isolation without relying on dependencies. The article highlights the importance of test doubles in scenarios where dependencies are unavailable, incomplete, or unsuitable for testing environments. 


Kumari also discusses the various types of test doubles, including mocks, stubs, spies, fakes, and dummies, each serving unique purposes in the testing process. She provides practical examples, such as using a test double for a payment gateway API to simulate responses like successful payments, failures, or network errors.


I think this was a well made article that does a nice job at explaining the usefulness of Test Doubles. I learned that they give you more control, flexibility, and reliability in your testing efforts.


From the blog George C Blog by George Chude and used with permission of the author. All other rights reserved by the author.

CS-443 Blog – Test Doubles

 CS@Worcester CS-443


What is a Test Double? | Types & Best Practices 

This blog reviews the article “What is a Test Double? | Types & Best Practices”, by Ritika Kumari. 


This article on Test Doubles provides a comprehensive overview of their role in software testing.  It emphasizes how test doubles act as substitutes for real components, enabling developers to test code in isolation without relying on dependencies. The article highlights the importance of test doubles in scenarios where dependencies are unavailable, incomplete, or unsuitable for testing environments. 


Kumari also discusses the various types of test doubles, including mocks, stubs, spies, fakes, and dummies, each serving unique purposes in the testing process. She provides practical examples, such as using a test double for a payment gateway API to simulate responses like successful payments, failures, or network errors.


I think this was a well made article that does a nice job at explaining the usefulness of Test Doubles. I learned that they give you more control, flexibility, and reliability in your testing efforts.


From the blog George C Blog by George Chude and used with permission of the author. All other rights reserved by the author.

CS-443 Blog – Test Doubles

 CS@Worcester CS-443


What is a Test Double? | Types & Best Practices 

This blog reviews the article “What is a Test Double? | Types & Best Practices”, by Ritika Kumari. 


This article on Test Doubles provides a comprehensive overview of their role in software testing.  It emphasizes how test doubles act as substitutes for real components, enabling developers to test code in isolation without relying on dependencies. The article highlights the importance of test doubles in scenarios where dependencies are unavailable, incomplete, or unsuitable for testing environments. 


Kumari also discusses the various types of test doubles, including mocks, stubs, spies, fakes, and dummies, each serving unique purposes in the testing process. She provides practical examples, such as using a test double for a payment gateway API to simulate responses like successful payments, failures, or network errors.


I think this was a well made article that does a nice job at explaining the usefulness of Test Doubles. I learned that they give you more control, flexibility, and reliability in your testing efforts.


From the blog George C Blog by George Chude and used with permission of the author. All other rights reserved by the author.

CS-443 Blog – Test Doubles

 CS@Worcester CS-443


What is a Test Double? | Types & Best Practices 

This blog reviews the article “What is a Test Double? | Types & Best Practices”, by Ritika Kumari. 


This article on Test Doubles provides a comprehensive overview of their role in software testing.  It emphasizes how test doubles act as substitutes for real components, enabling developers to test code in isolation without relying on dependencies. The article highlights the importance of test doubles in scenarios where dependencies are unavailable, incomplete, or unsuitable for testing environments. 


Kumari also discusses the various types of test doubles, including mocks, stubs, spies, fakes, and dummies, each serving unique purposes in the testing process. She provides practical examples, such as using a test double for a payment gateway API to simulate responses like successful payments, failures, or network errors.


I think this was a well made article that does a nice job at explaining the usefulness of Test Doubles. I learned that they give you more control, flexibility, and reliability in your testing efforts.


From the blog George C Blog by George Chude and used with permission of the author. All other rights reserved by the author.