tag:blogger.com,1999:blog-84867300922009379062024-03-15T18:09:21.274-07:00TESTER'S WORLDTESTER's WORLD is created to explore the software testing in all possibilitiesExplorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.comBlogger25125tag:blogger.com,1999:blog-8486730092200937906.post-88373654386014211952023-03-24T20:27:00.004-07:002023-03-24T20:27:51.419-07:00Top 5 Automation Testing Tools for 2023<p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Tool #1: Selenium</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Selenium is an open-source automation testing tool that allows testers to automate web applications across various browsers and platforms. It provides a range of programming languages such as Java, Python, Ruby, C#, and more, for writing test scripts. Selenium is highly flexible and customizable, and can be easily integrated with other tools such as Maven, Jenkins, and TestNG.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Pros and cons of the tool:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Pros:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Open-source and free to use</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Cross-browser and cross-platform testing</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Support for multiple programming languages</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Wide range of integrations and plugins available</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Cons:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Requires technical expertise to set up and use effectively</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Limited support for testing non-web applications</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Tool #2: Appium</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Appium is an open-source automation testing tool that is used for testing mobile applications across different platforms such as iOS and Android. It supports a range of programming languages such as Java, Python, Ruby, C#, and more, and allows testers to write and run test scripts on real devices or emulators.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Pros and cons of the tool:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Pros:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Open-source and free to use</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Cross-platform mobile testing</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Supports a wide range of programming languages</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Can test on real devices or emulators</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Cons:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Requires setup of a testing environment</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Requires technical expertise to use effectively</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Tool #3: TestComplete</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">TestComplete is an automated testing tool that supports web, desktop, and mobile applications across multiple platforms. It supports a wide range of programming languages such as JavaScript, Python, VBScript, and more. TestComplete offers a comprehensive set of features, including automated functional testing, performance testing, and test management.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Pros and cons of the tool:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Pros:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Supports a wide range of application types</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- User-friendly and easy to use</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Offers comprehensive features for functional and performance testing</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Provides built-in reporting and analysis tools</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Cons:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Limited support for testing non-Windows applications</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- No built-in support for mobile application testing</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Tool #4: Katalon Studio</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Katalon Studio is an all-in-one automation testing solution that supports web, API, mobile, and desktop applications across multiple platforms. It supports a range of programming languages such as Java, Groovy, and more. Katalon Studio offers a user-friendly interface that allows testers to easily create and execute automated tests.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Pros and cons of the tool:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Pros:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Offers a wide range of automation testing capabilities</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- User-friendly and easy to use</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Provides built-in reporting and analysis tools</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Supports data-driven and keyword-driven testing</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Cons:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Limited support for testing non-HTTP/HTTPS applications</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Limited customization options for advanced users</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Tool #5: Ranorex Studio</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Ranorex Studio is an all-in-one automated testing tool that supports web, mobile, and desktop applications across multiple platforms. It supports a range of programming languages such as C#, VB.NET, and more. Ranorex Studio offers a comprehensive set of features, including UI testing, functional testing, and regression testing.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Pros and cons of the tool:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Pros:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Offers a comprehensive set of features for automation testing</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- User-friendly and easy to use</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Provides built-in reporting and analysis tools</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Offers robust object recognition and object repository management</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>- Cons:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Limited support for testing non-Windows applications</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">- Can be expensive for small businesses or individual users</p>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-64095642878809321232023-02-18T09:49:00.005-08:002023-02-18T09:51:44.713-08:00How to Design an Effective Performance Testing Strategy for Web Applications?<p><b> <span style="font-family: "Helvetica Neue"; font-size: 13px;">Introduction</span></b></p><p><span style="font-family: "Helvetica Neue"; font-size: 13px;">Web applications are critical to businesses of all sizes, but their performance can have a significant impact on user experience, customer satisfaction, and the bottom line. Performance testing is essential to ensure that web applications can handle the expected traffic and load without slowing down or crashing. In this blog post, we will discuss how to design an effective performance testing strategy for web applications.</span></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>1. Define the Objectives of Your Performance Testing Strategy</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">The first step in designing an effective performance testing strategy is to define your objectives. You need to determine what you want to achieve through performance testing. Common objectives include ensuring that the application can handle a specific number of concurrent users, minimizing page load times, or verifying that response times meet user expectations. It's important to set specific and measurable objectives that align with your business goals.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>2. Identify the Performance Metrics You Will Measure</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">The second step in designing an effective performance testing strategy is to identify the performance metrics you will measure. Performance metrics provide insight into the behavior of your web application under different load conditions. Common performance metrics include response time, throughput, error rate, and resource utilization. It's important to select performance metrics that align with your objectives and are meaningful to your stakeholders.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>3. Determine Your Testing Environment</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">The third step in designing an effective performance testing strategy is to determine your testing environment. Your testing environment should closely resemble your production environment in terms of hardware, software, and network configuration. This will help ensure that your performance test results are accurate and representative of real-world conditions. If you cannot replicate your production environment, you should aim to create a testing environment that is as close as possible.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>4. Select the Right Tools</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">The fourth step in designing an effective performance testing strategy is to select the right performance testing tools. There are many performance testing tools available, ranging from open-source tools to commercial products. When selecting performance testing tools, consider factors such as ease of use, scalability, and support for your testing environment. It's important to choose tools that align with your objectives and provide accurate and actionable results.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>5. Design Your Test Scenarios</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">The fifth step in designing an effective performance testing strategy is to design your test scenarios. A test scenario is a series of steps that simulate user behavior on your web application. When designing test scenarios, consider factors such as the number of concurrent users, the actions to simulate, and the duration of the test. It's important to design test scenarios that align with your objectives and performance metrics.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>6. Execute Your Tests</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">The sixth step in designing an effective performance testing strategy is to execute your tests. When executing tests, you should simulate various load conditions to determine how your web application performs under different scenarios. You should also monitor performance metrics to identify any issues that may arise. It's important to execute tests in a controlled and repeatable manner to ensure accurate and consistent results.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b style="font-family: "Helvetica Neue"; font-size: 13px;">7. </b><span style="font-family: Helvetica Neue;"><span style="font-size: 13px;"><b>Analyse</b></span></span><b style="font-family: "Helvetica Neue"; font-size: 13px;"> the Results and Optimize Performance</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">The seventh step in designing an effective performance testing strategy is to analyze the results and optimize performance. Once you have executed your tests and collected data, you should analyze the results to identify any bottlenecks or performance issues. You should then optimize your web application to address any issues that arise. This may involve adjusting server settings, optimizing code, or scaling infrastructure.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Conclusion</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">In conclusion, designing an effective performance testing strategy is critical to ensuring the performance and scalability of your web application. By following these steps, you can design a performance testing strategy that aligns with your objectives, measures the right performance metrics, and provides actionable results. With an effective performance testing strategy, you can ensure that your web application delivers an optimal user experience and meets your business goals.</p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px; text-align: center;"><br /></p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px; text-align: center;"><br /></p>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-69215327078085230442023-01-28T00:56:00.002-08:002023-01-28T00:56:57.466-08:00ChatGPT-powered Continuous Testing: Improving Software Quality and Speed<p> <span style="font-family: "Helvetica Neue"; font-size: 13px;">Software development is a complex process that requires a variety of testing methods to ensure that the final product is of high quality and meets the needs of the users. Continuous testing is a practice that involves testing software during the development process, rather than waiting until the end. This approach helps to identify and fix defects early on, which can save time and money in the long run. However, traditional methods of continuous testing can be time-consuming and resource-intensive. This is where ChatGPT, the powerful language model developed by OpenAI, comes in.</span></p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><a href="https://www.digistore24.com/redir/466656/Amaradana/">ChatGPT</a> is a natural language processing (NLP) model that can be used to generate test cases, automate test execution, and provide real-time feedback. This can help to improve the efficiency and effectiveness of continuous testing, which can lead to better software quality and faster delivery times.</p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">One of the key benefits of using ChatGPT for continuous testing is its ability to generate test cases. The model can be trained on a set of software requirements and can then be used to identify potential edge cases and test scenarios. This can help to ensure that all potential scenarios are covered, which can reduce the risk of defects in the final product. ChatGPT can also be used to generate test cases that are tailored to the specific features and functionality of the software, which can help to improve test coverage.</p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Another benefit of using ChatGPT for continuous testing is its ability to automate test execution. The model can be used to generate automated test scripts, which can be executed by a testing tool.<span class="Apple-converted-space"> </span></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">This can help to reduce the time and resources required for manual testing and can increase the speed of software development. ChatGPT can also be used to report on test results, which can help to identify areas for improvement in the software development process.</p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">In addition to the above, ChatGPT can also be used to analyze test data and identify trends that can improve the software development process. The model can be trained on historical test data and can be used to identify patterns that can lead to defects. This can help to improve the quality of the software by identifying areas that are at risk of defects and addressing them early on.</p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">In conclusion, <a href="https://www.digistore24.com/redir/466656/Amaradana/">ChatGPT</a> is a powerful language model that can be used to improve the efficiency and effectiveness of continuous testing. Its ability to generate test cases, automate test execution, and provide real-time feedback can help to improve software quality and speed up delivery times. ChatGPT can also be used to analyze test data and identify trends that can improve the software development process. This makes ChatGPT-powered Continuous testing a promising solution for software development teams to improve the quality of the product and accelerate the delivery.</p>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-53624224511280573562023-01-25T21:18:00.005-08:002023-03-24T21:45:31.072-07:00"KLOC and Test Case Prioritisation in Agile Development"<p><b style="font-family: "Helvetica Neue"; font-size: 13px;">Introduction:: </b><span style="font-family: "Helvetica Neue"; font-size: 13px;">Test case prioritization is a critical aspect of software testing, especially in agile development environments where speed and flexibility are key. Agile development methodologies such as Scrum and Kanban place a strong emphasis on delivering value to customers quickly and continuously, and this requires a focus on testing that is both efficient and effective. One key metric that can be used to inform test case prioritization is lines of code, or KLOC. In this blog post, we will explore the role of KLOC in test case prioritization in agile development, and how it can be used to optimize testing efforts and improve the overall quality of software. By focusing testing efforts on areas of the codebase with higher KLOC, teams can prioritize test cases that are most likely to uncover critical issues and improve the overall quality of the software.</span></p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 16px;"><b>Understanding KLOC:</b><b></b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">KLOC, or lines of code, is a measure of the size of a software system. It is typically calculated by counting the number of lines of code in the system, and is often used as a way to estimate the complexity and effort required to test a system. In this section, we will take a closer look at KLOC and how it can be used to inform test case prioritization in agile development. To calculate KLOC, a simple line counting tool or script can be used. The tool or script counts the number of lines of code in the identified codebase and then divides the total number of lines of code by 1000 to get the KLOC value. This will give you the number of thousands of lines of code in the codebase.</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">One of the main advantages of using KLOC as a metric for test case prioritization is that it is relatively simple to calculate and understand. Unlike other metrics such as cyclomatic complexity, which can be more difficult to interpret and apply, KLOC is a straightforward measure of the size of the codebase. This makes it easy to communicate to stakeholders and team members, and to use as a basis for test case prioritization. Another advantage of using KLOC as a metric for test case prioritization is that it can be used to balance coverage and efficiency. By focusing testing efforts on areas of the codebase with high KLOC, teams can ensure that they are targeting the areas that are most likely to contain defects, while still being able to cover a significant portion of the codebase. This can help teams to optimize testing efforts and improve the overall quality of the software.</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">It is important to note that KLOC is a simple metric and has some limitations, it doesn't consider the complexity of the code or the potential defects, and it doesn't include non-code files like documentation or configuration files. It can be used as a starting point for test</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Using KLOC for Test Case Prioritization</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Once you have calculated the KLOC value for your codebase, it can be used to inform test case prioritization. By identifying areas of the codebase with higher KLOC, you can target testing efforts in the areas that are most likely to contain defects. One way to use KLOC for test case prioritization is to create a list of test cases for each module or feature in the codebase, and then prioritize the test cases based on the KLOC value of the corresponding code. For example, if you have two modules, A and B, with KLOC values of 500 and 1000, respectively, you would prioritize testing for module B first as it has a higher KLOC value and therefore is more likely to contain defects.</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Another way to use KLOC for test case prioritization is to create a heatmap of the codebase, where each module or feature is represented by a color or symbol that corresponds to its KLOC value. This can help to quickly identify areas of the codebase that have higher KLOC and therefore require more testing.</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">It is important to note that while KLOC is a valuable metric for test case prioritization, it should be used in conjunction with other factors such as code complexity, change frequency, and testing history. For example, a module with a high KLOC value but that hasn't been modified in a long time and has been extensively tested in the past, may not require as much testing as a module with a lower KLOC value but has been recently modified and has not been tested as much.</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Additionally, it's <a href="https://www.digistore24.com/redir/443167/Amaradana/">important</a> to use the same tool and method to measure KLOC consistently over time, this will allow you to track changes in the codebase and adjust test case prioritization accordingly. Also, it's essential to communicate the KLOC results and the test case prioritization plan to the rest of the team, and keep them updated on the progress.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">In conclusion, using <a href="https://www.digistore24.com/redir/456090/Amaradana/">KLOC</a> as a metric for test case prioritization in agile development can help teams to focus their testing efforts on the most valuable features and functionality, while still being able to deliver</p><p class="p4" style="font-family: "Helvetica Neue"; font-size: 16px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px 0px 2px; min-height: 19px; text-align: center;"><b></b><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Integrating KLOC into Agile Development Processes</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Once you have a good understanding of how KLOC can be used for test case prioritization, the next step is to integrate it into your agile development processes. This can help to ensure that testing efforts are aligned with your agile development goals and objectives, and that you are able to deliver working software to customers on a regular basis. One way to integrate KLOC into agile development processes is to incorporate it into your sprint planning and retrospective meetings. During sprint planning, you can use KLOC to identify areas of the codebase that require more testing and to prioritize test cases accordingly. During retrospective meetings, you can use KLOC to track progress and to identify areas where testing efforts can be improved.</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Another way to integrate KLOC into agile development processes is to use it as a key performance indicator (KPI). By tracking KLOC over time, you can get a better understanding of how your codebase is evolving and how it is impacting your testing efforts. This can help you to identify areas of the codebase that are becoming more complex and that require more testing, and to make adjustments accordingly. It's also important to use KLOC in conjunction with other metrics such as code complexity and change frequency. By combining these metrics, you can get a more complete picture of the codebase and can make more informed decisions about testing.</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Additionally, it's important to consider the testing environment, and make sure that the team has the necessary resources and tools to measure and track KLOC. This will help to ensure that the team can work effectively and efficiently, and that testing efforts are aligned with the agile</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><b>Conclusion:</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">In conclusion, KLOC, or lines of code, is a valuable metric for test case prioritization in agile development. By measuring the size of the codebase, KLOC can help teams to identify areas of the codebase that are most likely to contain defects, and to focus their testing efforts accordingly. Additionally, KLOC is a simple metric that is easy to understand and communicate, making it a useful tool for test case prioritization in agile development.</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">However, it's important to note that KLOC is a simple metric and has some limitations. It doesn't consider the complexity of the code or the potential defects, and it doesn't include non-code files like documentation or configuration files. Therefore, it should be used in conjunction with other factors such as code complexity, change frequency, and testing history. To integrate KLOC into agile development processes, it is important to incorporate it into sprint planning and retrospective meetings, and use it as a key performance indicator (KPI). By tracking KLOC over time, teams can get a better understanding of how the codebase is evolving and how it is impacting their testing efforts.</p><p class="p3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;">Finally, it's important to use the same tool and method to measure KLOC consistently over time, this will allow teams to track changes in the codebase and adjust test case prioritization accordingly. Also, it's essential to communicate the KLOC results and the test case prioritization plan to the rest of the team, and keep them updated on the progress. By following these best practices, teams can use KLOC as a powerful tool for test case prioritization in agile development and deliver better quality software to customers.</p>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-5371647684976091792023-01-24T21:43:00.004-08:002023-01-24T22:06:27.556-08:00How to Identify and Prevent Common Performance Issues: A Guide for Non-Technical Users: <p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;"><b>Introduction</b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">Website performance is crucial for both user experience and search engine optimization. Slow loading times and frequent crashes can lead to high bounce rates and poor search engine rankings. As a website owner, it's important to be aware of common performance issues and how to prevent them.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">In this guide, we will focus on three common performance issues: memory leaks, thread deadlocks, and database contention. These issues can be difficult to diagnose and fix, but with the right approach, you can prevent them from happening in the first place. Will try to provide a brief explanation of each issue and then offer tips for identifying and preventing them. By the end of this guide, you will have a better understanding of how to optimize your website's performance and keep it running smoothly.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">Please note that this guide is for non-technical users, so we will be using simple language and avoiding technical jargon as much as possible.</p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px; text-align: justify;"><br /></p><h2 style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">Memory Leaks</h2><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">A memory leak occurs when a program allocates memory for a specific task and then fails to release it after the task is completed. Over time, these small leaks can add up and cause the program to use more and more memory, eventually leading to poor performance or crashes.One of the main symptoms of a memory leak is that the program's memory usage gradually increases over time, even when it's not doing anything. You may also notice that the program becomes slower and less responsive as memory usage increases.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">To identify memory leaks, you can use a tool called a memory profiler. These tools can help you track the program's memory usage over time and identify which parts of the code are causing the leaks.Once you've identified the source of the leak, you can start working on preventing it. Here are a few best practices you can follow to avoid memory leaks</p><ul class="ul1"><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Be mindful of creating new objects and discarding them when they are no longer needed.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Use smart pointers and RAII (Resource Acquisition Is Initialization) techniques to manage memory automatically.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Avoid creating cyclic references, which can prevent garbage collection.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span style="text-align: justify;">Use a language that has automatic memory management, such as Java or C#. These languages have built-in mechanisms for managing memory and can help prevent leaks.</span></li></ul><p class="p4" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 16px; text-align: justify;"><b>Thread DeadLocks</b></p><p class="p4" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 16px; text-align: justify;">A thread deadlock occurs when two or more threads are blocked and unable to continue execution because each one is waiting for the other to release a resource. This can lead to poor performance or even cause the program to freeze or crash.Thread deadlocks can be difficult to identify, but you may notice that the program becomes unresponsive or that certain tasks take an unusually long time to complete.</p><p class="p4" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 16px; text-align: justify;"><b></b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">To identify thread deadlocks, you can use a tool called a thread profiler. These tools can help you track the program's thread usage over time and identify which parts of the code are causing the deadlocks.Once you've identified the source of the deadlock, you can start working on preventing it. Here are a few best practices you can follow to avoid thread deadlocks:</p><ul class="ul1"><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Avoid using nested locks, as they can lead to deadlocks.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Use a timeout mechanism for resources that are in high demand.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Use the 'try-lock' pattern for resources that may be held for a short period of time.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Use a synchronization mechanism, such as semaphores, to control access to shared resources.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Use a lock-free data structure to ensure that threads never wait for resources</li></ul><p class="p6" style="font-family: "Helvetica Neue"; font-size: 16px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px 0px 2px; min-height: 19px; text-align: justify;"><span style="font-size: 13px;"><b>Database contention</b></span></p><p class="p6" style="font-family: "Helvetica Neue"; font-size: 16px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px 0px 2px; min-height: 19px; text-align: justify;"><span style="font-size: 13px;">Database contention occurs when multiple processes are trying to access the same resource at the same time, such as a table or a row in a database. This can lead to poor performance, as the database has to work harder to manage the multiple requests.Symptoms of database contention include slow query performance, high CPU usage, and long wait times for database locks.</span><b></b></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">To identify database contention, you can use a tool called a database profiler. These tools can help you track the database's usage over time and identify which parts of the code are causing the contention.Once you've identified the source of the contention, you can start working on preventing it. Here are a few best practices you can follow to avoid database contention:</p><ul class="ul1"><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Use indexes to optimize queries and reduce contention.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Use partitioning to spread the load across multiple servers.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Avoid using table scans, which can cause contention.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Use stored procedures to group related queries and reduce contention.</li><li class="li3" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px;"><span class="s1" style="font-family: Menlo; font-size: 9px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal;"></span>Use a connection pool to limit the number of open connections to the database.</li></ul><p class="p7" style="color: #dca10d; font-family: "Helvetica Neue"; font-size: 16px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px 0px 2px; text-align: justify;"><span class="s2" style="text-decoration-line: underline;"><a href="https://www.blogger.com/blog/post/edit/8486730092200937906/537164768497609179#"><b>Conclusion</b></a></span></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">In this guide, we've discussed three common performance issues: memory leaks, thread deadlocks, and database contention. We've provided an overview of what each issue is, how it can affect performance, and tips for identifying and preventing them.By following the best practices outlined in this guide, you can help ensure that your website runs smoothly and avoids performance issues. Remember, that preventing these performance issues requires careful programming and testing, but with the right approach, you can keep your website running at optimal performance.</p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">It's worth mentioning that identifying and preventing these performance issues can be a complex task, especially for non-technical users. If you're having trouble identifying or preventing performance issues on your own, it may be beneficial to hire a developer or consultant with experience in performance optimization to help you.For further learning, you can refer to the additional resources such as books, blogs, and online tutorials. These resources can provide more detailed information on the topics covered in this guide, and can help you take your performance optimization to the next level.</p><p class="p2" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; min-height: 15px; text-align: justify;"><br /></p><p class="p1" style="font-family: "Helvetica Neue"; font-size: 13px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: normal; margin: 0px; text-align: justify;">Thank you for reading this guide. I hope you found it helpful and informative.</p>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-13988935603504917772012-06-05T09:43:00.001-07:002023-03-24T21:47:16.251-07:00Jenkins and Jmeter Integration (PART 1)<span style="font-family: Tahoma; font-size: 13px;">There are several posts which are already present. I am not creating this post with reference to any of the posts available over internet. Jenkins + Jmeter integration is quite simple, am use this execution by using "Ant" in the below steps</span><br />
<ol style="font-family: Tahoma; font-size: 13px;" type="a">
<li>Environmental set up</li>
<li>Configuration set up</li>
<li>Invoking Jmeter from Jenkins which also includes publishing the results at Jenkins</li>
</ol>
<span style="font-family: Tahoma; font-size: x-small;">We will discuss each one in phase wise and with initial set/minimal configurations for ease of the understanding how to do achieve this configuration. First we will look at the environment set up, and in the part 2 we will see next 2 steps</span><br />
<span style="font-family: Tahoma; font-size: x-small;"><br /></span><strong>Environmental set up:</strong>Three things which are most important for this integration is "Ant", "Jmeter", "Jenkins". All the below configuration were subjected to <b>Windows OS.</b><b style="font-family: Tahoma; font-size: 13px;"><br /></b><br />
<b style="font-family: Tahoma; font-size: 13px;">ANT:</b>Download the ant from apache, and set the path till "bin" folder i.e is<br />
C:\apache-ant-1.8.4-bin\apache-ant-1.8.4\bin;<br />
<b style="font-family: Tahoma; font-size: 13px;"><br /></b><br />
<b style="font-family: Tahoma; font-size: 13px;">Jmeter:</b>Download the Jmeter and set the path till Bin folder, i.e<br />
D:\apache-jmeter-2.7\apache-jmeter-2.7\bin;<br />
<b style="font-family: Tahoma; font-size: 13px;"><br /></b><br />
<b style="font-family: Tahoma; font-size: 13px;">Jenkins:</b>Download Jenkins from the Jenkins site, and deploy it. You can either deploy in the tomecat etc server or run the command from the command line<br />
Java –jar Jenkins.war<br />
<br />
This will deploy automatically, since Jenkins uses embedded servlet container called winstone with in it. Note: If the Jenkins deployment is done with the above steps then Jenkins have to be started always using the above command or after the first installation you can set as windows service.<br />
<br />
<em>NOTE</em>: All the above were still depend on Java, make sure that java is installed and set up correctly.<br />
<ol style="font-family: Tahoma; font-size: 13px;" type="a"></ol>
<b style="font-family: Tahoma; font-size: 13px;"></b><br />
<b style="font-family: Tahoma; font-size: 13px;">
</b><span style="font-family: Tahoma; font-size: 13px;"></span><br />
<b style="font-family: Tahoma; font-size: 13px;"></b><br />
<b style="font-family: Tahoma; font-size: 13px;">
</b><br />
<b style="font-family: Tahoma; font-size: 13px;">
</b><span style="font-family: Tahoma; font-size: 13px;"></span><br />
<b style="font-family: Tahoma; font-size: 13px;"></b><br />
<b style="font-family: Tahoma; font-size: 13px;">
</b><br />
<b style="font-family: Tahoma; font-size: 13px;">
</b><span style="font-family: Tahoma; font-size: 13px;"></span>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com4tag:blogger.com,1999:blog-8486730092200937906.post-16213185523526253662012-05-29T07:48:00.001-07:002012-05-29T09:00:51.599-07:00<br />
<div align="left" style="font-family: Tahoma; font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span lang="en"><b>Jmeter - OS Sampler :</b></span></div>
<div align="left" style="font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span lang="en" style="font-family: inherit;"><br /></span></div>
<div align="left" style="margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span lang="en" style="font-family: Arial, Helvetica, sans-serif;">Jmeter has released version 2.7 with some of the great features and enhancements/improvements in JMS and Web services samplers and with new sampler "OS Sampler". For the reference please go through the below link</span></div>
<div align="left" style="font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<br /></div>
<div align="left" style="font-family: Tahoma; font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span lang="en"><a href="https://owai.applabs.com/owa/redir.aspx?C=c2fb2abd65444da8a10383dd83bd20a1&URL=http%3a%2f%2fjmeter.apache.org%2fchanges.html" target="_blank"><span style="font-family: Calibri; font-size: small;">http://jmeter.apache.org/changes.html</span></a></span></div>
<div align="left" style="font-family: Tahoma; font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span style="font-family: Calibri; font-size: small;"><span lang="en"><br /></span></span></div>
<div align="left" style="font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span style="font-size: small;"><span lang="en" style="font-family: inherit;">Rather than taking about all enhancements let us see about the new sampler "OS Sampler"</span></span></div>
<div align="left" style="font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span style="font-family: inherit;"><span style="font-size: small;"><span lang="en">OS sampler uses the command line command called "DIG" which is an inbuild tool as apackage with most of the linux packages, some of them were listed below.</span></span></span></div>
<ol style="font-family: Tahoma; font-size: 13px; margin-bottom: 14pt; margin-top: 14pt;"><span style="font-family: Calibri; font-size: small;"><span lang="en">
<li>Bind Tools (Gentoo)<div style="margin-bottom: 0px; margin-top: 0px;">
<span style="text-align: justify;"> </span></div>
</li>
<li>Bind-utils (Red Hat and Fedora)<div style="margin-bottom: 0px; margin-top: 0px;">
<span style="text-align: justify;"> </span></div>
</li>
<li>Dnsutils (debian)<div style="margin-bottom: 0px; margin-top: 0px;">
<br />
<div style="text-align: -webkit-auto;">
<span style="text-align: justify;">DIG is usually used to dig/get the information of DNS servers, mail servers, IP address etc.</span></div>
</div>
</li>
</span></span></ol>
<div align="left" style="font-family: Tahoma; font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
</div>
<div align="left" style="font-family: Tahoma; font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span style="font-family: Calibri; font-size: small;"><span lang="en"><a href="https://owai.applabs.com/owa/redir.aspx?C=c2fb2abd65444da8a10383dd83bd20a1&URL=http%3a%2f%2fwww.madboa.com%2fgeek%2fdig%2f" target="_blank">http://www.madboa.com/geek/dig/</a></span></span></div>
<div align="left" style="font-family: Tahoma; font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span style="font-family: Calibri; font-size: small;"><br /></span></div>
<div align="left" style="font-family: Tahoma; font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span style="font-family: Calibri; font-size: small;">Thanks</span></div>
<div align="left" style="font-family: Tahoma; font-size: 13px; margin-bottom: 0px; margin-top: 0px; text-align: justify;">
<span style="font-family: Calibri; font-size: small;">Amar</span></div>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-17843634671198074312009-12-28T06:27:00.000-08:002010-01-28T03:47:29.554-08:00Look YourSelf in MirrorHello Readers,<br />This is my last post in this year. I Wish you a happy Christmas and New Year Celebrations.<br /><br />When I looked at myself in mirror thought "Ho man, One more year is over in my life and what have you done"? This Question started running in my mind in the beginning of December and still continues... Then i started collecting the good and bad things that i have done in this year and also what is the difference that i made in past years compared to this year.<br />Ans : I wasted one more year as usual. But always it teaches me a lesson.<br /><br />Good things (off course its only for me :)<br />1. When i received mail from the person, whom i doesn't know(Martin Havlat) that "my rights to forum has been updated to Moderator" . This mail really boosted my for doing some thing from out of the box.<br />2. Lots of appreciations from Manager, Leads, Colleagues etc. off course from my side as well.<br />3. Implementing TestLink in my Company. ( this was the toughest job that i have done in my career till now)<br />3. Rest of things are normal, this are only special things that i can share.<br /><br /><br />Bad things,<br />Obviously I dont want to discuss but still,<br />1. Implementation of TestLink in my company was so delayed for 'N' number of reasons which i can not discuss and i also feel for it.<br />2. Most of the time i felt i should have done many things in a better way.<br /><br />You may think why i made this post. There is a reason.<br /><br /><div style="TEXT-ALIGN: center">"Mirror is like two sides of a coin,<br />You never knew the go0d and bad Until you realize by seeing it"<br /><br /><div style="TEXT-ALIGN: left">I releasized when i saw in mirror my self and thought of the question "Ho man, One more year is over in my life and what have you done" if this doesn't come to my mind i would never knew whats is happened in the past or this year.<br /><br />I am happy for what i did but i also made few great things that i had not done in my past this is what made me difference from the past to current year(2009)<br /><br />i am moving a head with more passionate for what i do for coming year.<br /><br />Please If your more passionate<br /><br /><div style="TEXT-ALIGN: center">"LOOK YOURSELF IN THE MIRROR and ASK YOURSELF WHAT HAVE YOU MADE DIFFERNENCE"<br /><br /><div style="TEXT-ALIGN: left">Thanks,<br />TesterWorld.<br /></div></div><br /></div></div>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com1tag:blogger.com,1999:blog-8486730092200937906.post-81421614356164014692009-03-04T20:58:00.000-08:002009-05-04T06:36:45.788-07:00Working with TestLinki was excited working on it, i really felt good but, there are also disadvantages/factors that has to be considered and in fact i learnt few things/lessons in implementing (not yet implemented decision left for management) When I started taking this task, we knew that it is hard to implement this, but for the long run this is good, Problem is for a project that have 40000+ test cases which will be really hard to dump into testlink. So if testlink is implemented in a new projects i think this can be fit.<br /><br />As for my observations these were the Hurdles/disadvantages as for our project is concerned regarding implementing the Testlink tool.<br /><br />1. In order to migrate our test cases completely to Test Link, which takes a lot of time, though the import functionality is given, these can be done only via XML(including custom fields). 2. This restricts only to Pass, fail or blocked status are only available as for as test cases execution/while generating Results.<br /><br />Advantages :<br />1. Easy in tracking test cases(search with keyword, test case id, version etc)<br />2. We can add our custom fields to test cases.<br />3. Allocating the work either test case creation/execution/preparing any kind of documents is easy<br />4. when a test cases is updated the previous version also can be tracked<br />5. We can generate results build wise<br />6. Test plans are created for builds and work allocations can be done.<br />7. Report, is one of the awesome functionality present in the Test link, it generates reports in desired format like HTML/ CSV /Excel and more over the art of reports is based on the results from the test case executions that were allocated build wise/individual resources/test plan with pass/failed percentage and this can also be generated in graphs.<br />8. And the above all is done on the privileges based which is an art of the testlink and i liked this feature much<br /><br />This post is made not to use testlink or neither to implement the tool. I wrote this post since we could learn before implemnting the tools a few lessons and i learnt the following lessons<br />1. Regardless the features of the tool, we need to look how far is this feasible to the project<br />2. Environment and process also has to be considered as well<br />3. Time is main factor in implementing such tools in such huge project etc.....<br /><br />Off course all the above mentioned lessons were heard that while implementing any kind of tool we need to consider the above points, but today i experienced those lessons and enjoyed in doing such work.<br /><br />Thanks,<br />TesterWorld<br /><blockquote>Update: Atleaset we started to implement for one of the project. yet, there are many challenges to come.</blockquote>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com9tag:blogger.com,1999:blog-8486730092200937906.post-12016201241645856232008-12-28T10:01:00.000-08:002008-12-28T10:07:13.079-08:00Testing an Application without documentsI have taken the Stefan's dashboard just to show how the exploratory testing can be done, as recently i met a person(tester) as our conversion went as follows<br /><br />Tester : Do you know anything about Win Runner, QTP<br />TesterWorld(ME) : They are automational tools used for checkinging the functionality<br />Tester : That answer any one can say who are in testing field. Tell me are you manual / automation tester.<br /><br />Our conversation went top to the hill, as he argued that Automation will re place manual testing, I got annoyed with his reasonless argument and I just asked a simple question. Can you test any appliccation that has no functionality/specification document).Tester : No, i cant test. how can we test with out any of the documents.<br /><br />This was the answer he gave me, i really pitty for most of the people who are not skilled testers and still acts as if they are senior QA, etc. So this post is for those people who are really intrested and passionate about testing.<br /><br />I have taken the Stefans Dash board as it really looks great and made me exciting while i was testing for this post, (<a href="http://abouttesting.blogspot.com/2008/06/testing-dashboard.html">http://abouttesting.blogspot.com/2008/06/testing-dashboard.html</a>) . This made me really exciting while seeing the sample screen shot in the above mentioned post <strong>and i downloaded the file with out reading the whole post</strong><br /><br />First thought regarding the Dashboard :<br />when I unzipped it, i found a html file, excel sheet, two images, and one sample screen shot. I opened the HTML file AND FOUND no values are getting populated in dashboard, I was shocked why is this not getting opened, i thought some of the files must have been deleted intensionally.<br /><br />Second thought regarding the dashboard :<br />After some time later, again i went into the folder and opened the html File in notepad, unfortunately i am poor at programming languages but i gussed the path that was given in html file, that excel sheet has to be placed in C drive and then immediately i did that and again i opened the html file. Hurray it got opened. Offcourse the path can also be changed to as desired location and can be given in the notepad, inorder to make the dashboard to be worked.<br /><br />Third thought regarding the dashboard :<br />So i tried in doing couple of changes, just by status to pass to fail, changing version and adding comments everythings seems to be cool and working fine, then i used some of diffrent scenarios.<br />Sceanrio 1<br />Steps to reproduce:<br />1. Open the "autteststatus.html" file, and click on the change status button<br />2. In the comments give as 'test' and try to save a java script error is populated.<br /><br />Scenario 2<br />Steps to reproduce:<br />1. Open the "autteststatus.html" file, and click on the change status button<br />2. Now give the word in double quotes in comments column and save, you can observe that comments column is saved, now again click on the change button you can observe that, there is no data present for the changes you done previously<br /><br />Scenario 3<br />Steps to reproduce:<br />1. Open the "autteststatus.html" file, and click on the change status button<br />2. Enter the comments column with html tags like <b>test</b> and save you can find that it is saved and displayed as bold. Now again click on the change button, now ive the name in html tags like <bold>and save, changes were saved successfully but text i changed is not visible, now click on change button then you can find that text is present as given but it is not visible after we savee save.<br /><br />Scenario 4:<br />Steps to reproduce:<br />1. Open the "autteststatus.xls" file, and click on the change status button<br />2. Give the comments as 'test' note the costumer and version no. now open the html file and observe that starting quote is misssing in the column.<br />These were some of the scenarios Please be passioante about the work you do, that will make you rich and wealthy.Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-11783178147176088922008-06-30T23:59:00.000-07:002008-07-01T00:11:08.803-07:00"Automation or Manual testing"<span style="font-family:arial;">While this seems to be quite abnormal if you ask in what we want typo to work before coming to the testing carrier. In Hyderabad, the teaching culture of software testing has changed/seems to be changed a little bit like previously it was a struggle between our friends(upcoming testers) that automation means QTP, win runner etc where I used to object that though this is not the means but just to have a regular basis discussion. When I was into this testing carrier I asked a lot of people (An upcoming testers) about these two terms “Manual testing or automation testing”, every time we start we do have a several arguments and in the end we do have nothing but just to smile on each other faces which makes that we are an upcoming testers.<br />In my basis Automation is just an added skill to the Tester, but not just that it is the world. Without the manual there is no automation and off course there are vice versa in some cases. Automation itself is not just the tools like “QTP, Win runner, Silk runner” etc. the point is what ever we needed in our regular basis used for testing purpose that reduces time is an automation.. this was the basic of Automation testing.<br />I do like to give few examples. Let’s have field something like this<br /><br /><strong>FIELD ONE<br /><br /></strong></span><span style="font-family:arial;"><strong></strong></span><span style="font-family:arial;"><strong></strong></span><p align="justify"><a href="http://4.bp.blogspot.com/_tc57XCo8EH0/SGnW6vfunwI/AAAAAAAAAC8/rmWlkCtr2BY/s1600-h/image.JPG"><span style="font-family:arial;"><img id="BLOGGER_PHOTO_ID_5217937947955732226" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_tc57XCo8EH0/SGnW6vfunwI/AAAAAAAAAC8/rmWlkCtr2BY/s320/image.JPG" border="0" /></span></a></p><span style="font-family:arial;"><br /></span><br /><br /></span><blockquote><span style="font-family:arial;">Conditions : Only 2000 characters will allow. </span></blockquote><br /><span style="font-family:arial;">In such kind of test cases what would someone will do. I saw few people who started to write 2000 characters in a notepad. Which was a waste of time, in order to save time we do have lots of tools like test data generator. Search for them and generate 2000 characters which would prominently save time and increase the productivity. Such tools help us a lot in increasing productivity. Another small example is WORD/emails where we have a spell checker, which is an automated tool where we correct the wrong spellings.<br />Automation is not just the tools like QTP or win runner, Typically one has to be understand that what ever is needed for automating to increase our productivity is an Automation tool. </span><br /><span style="font-family:arial;"><br />NOTE : DEAR UPCOMING TESTER’s This post is especially to increase awareness about the automation or manual. I would really happy if at least one got understood from this post and implement in your daily basis to increase your productivity and don’t forget to leave your comments before you go away from this blog. </span><br /><span style="font-family:arial;"><br /><strong>SOME OF THE AWSOME SITE :</strong><br />you will never leave once you are visit these as at some point or the other you always need to increase your productivity<br /></span><br /></span><a href="http://www.testingmentor.com/"><span style="font-family:arial;">www.testingmentor.com</span></a><span style="font-family:arial;"><br /></span><a href="http://www.testersdesk.com/"><span style="font-family:arial;">www.testersdesk.com</span></a><span style="font-family:arial;"><br /><br /></span><span style="font-family:arial;"></span><span style="font-family:arial;"></span>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com5tag:blogger.com,1999:blog-8486730092200937906.post-71385305960988160652007-08-21T00:23:00.000-07:002008-06-17T21:33:52.862-07:00Working with STAF (part 2)Well we have discussed some of the concepts of staf in post <a href="http://amartester.blogspot.com/2007/08/working-with-staf.html">WAORKING WITH STAF</a>. NOW we will have some thing interesting interaction by using JMeter. <br /><br />Now let us know the concepts of Jmeter inorder to go further.<br /><br /> JMeter is a open source tool we can download from the site <a href="http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi">Apache Jmeter</a>.<br />Jmeter is a performance tool used for finding the avg. response time, devaition etc parameters like the other tools load runner. The only use of the Jmeter is a open source and also it is a less memory eater when compared to the other tools.<br /><br />NOW create a test plan according to the manual given in the Apache Jakarata site site itself, After creating a test plan save the file with desired name. LETs go to STAF now. <br /><br />IF for suppose this file is in the remote system. we can execute this file and and the results can be obtained in our systems. INORDER to do this we have to give the trust levels to the remote systems. There are 5 trust levels, according to each trust level the access is differnet for the remote systems. After giving the trust level. Now we can execute the test plan by making a batch file.<br /><br />In this Batch file we need the controller where the system we handle load generators where the test case is present, Well, i will make batch file very simple to understand and an idea how to execute the test plan by using the batch file.<br /><br /><blockquote><br />REM set the controllers<br />REM set the load generators<br />REM set the plan<br /><br />SET controller= webserver1<br />SET load = webserver2<br />SET plan=myplan.jmx<br /> <br />REM checking the STAF connecting to the remote systems<br /><br />FOR %%H IN (%controller% %load%) DO STAF %%H PING PING<br /><br />REM executing the test plan using jmeter <br /><br />for %%H IN (%load%) Do staf %%H PROCESS START SHELL COMMAND C:\jmeter\bin\jmeter-n.cmd C:\jmeter\bin\myplan.jmx<br /> <br />REM copying the results from the remote system to our system<br /><br />for %%H IN (%load%) Do staf %%H fs copy directory c:\jmeter\bin todirectory c:\logs\ tomachine %controller% EXT log CASEINSENSITIVE </blockquote><br /><br /> This is a small batch file where we can use staf and make wonders.<br /><br /><script type="text/javascript"><!-- <br />ch_client = "amaradana"; <br />ch_width = 468; <br />ch_height = 180; <br />ch_non_contextual = 1; <br />ch_default_category = "200001"; <br />var ch_queries = new Array( ); <br />var ch_selected=Math.floor((Math.random()*ch_queries.length)); <br />if ( ch_selected < ch_queries.length ) { <br />ch_query = ch_queries[ch_selected]; <br />} <br />//--></script> <br /><script src="http://scripts.chitika.net/eminimalls/mm.js" type="text/javascript"> <br /></script>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-29178841712123469412007-08-16T00:27:00.000-07:002008-07-22T21:21:59.492-07:00Dear Upcoming Testers...<p>Testers can't go away with "click here,click there and see the result" kind of a thing while testing. Testers always need the "DEEP THINKING" while they test. One of the famous example given by Mr.James Bach which i already mentioned in <a href="http://amartester.blogspot.com/2007/04/about-test-cases.html">About test cases</a>. Testers always need Deep thinking.I have spoken with some of the Upcoming testers, they are in situation what is the role of a tester after getting into the company ! i don't want to pinpoint saying that "here goes the wrong so you don't know the role of a tester". I meet some of my friends who are trained like me, we are trained in different schools in different arts of styles but final output we get is knowledge. We also have a discussion several times, what is the job/role of testers in a company ? we always have to compromise by saying one thing or the other in our battle.<br />And more important most of the upcoming tester think automation means "QTP.LOAD Runner". This is not at all the correct way of thinking, automation includes many concepts to discuss tools and as far as approach. for example spell check in MS Office or in some application can also called as automated way. we have resources and the only thing is we have to improve our knowledge by implementing and sharing it. i got few examples for testers,<br /><br /><a href="http://www.acutest.co.uk/acutest/aptitude-for-testing">f'ing counting</a><br /><br /><a href="http://www.acutest.co.uk/acutest/interactive-puzzle">interactive puzzle</a><br /><br />The above examples are really awesome and we can also correlate this examples with Testing. </p>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-13679517534581552222007-08-07T04:59:00.000-07:002007-08-08T00:48:13.178-07:00Working with STAFSTAF (software testing automation framework) is designed for reusable components called services. STAF is a remote agent used to control the test on various machines.for making easier to create automated test cases and workloads. it works on Windows,Linux,AS/400,MVS.<br /><br /><span style="font-weight: bold;">Concepts of STAF</span><br /><br />1).STAFProc<br /><br />2).STAF services<br /> a)Internal services are within the STAFProc which means they are always available<br /> and having the constant names.<br /> b)External services are outside the STAFProc which means they are always from<br /> outside for example from the java,c++ etc.<br /> c)Custom services are always the external services then can also be written in our<br /> custom and can be plugged into STAF.<br /><br />3).Queues and handles<br /><br />4).Variables<br /><br />5).Security<br /><br />6).Submitting Staf requests.<br /><br /><span style="font-weight: bold;">Configuration file:</span><br /> After installing the Staf, in order to get the access to local machines, trust level has to be given and java sdk is needed for running the staf.<br /><br /><blockquote><br />TRUST LEVEL 5 MACHINE tcp://local machine name or ip address.*</blockquote><br /><br /> you can find the STAF.CFG file in the bin folder of STAF. You can also alter many features in the configuration file like<br /><br />1).Specify the network interfaces<br /><br />2).Define operational parameters<br /><br />3).Define global variables<br /><br />4).Specify the security access<br /><br />5).Define startup/shutdown process<br /><br />6).Enable and configure tracing<br /><br />7).Register and configure external services<br /><br />The idea behind STAF is to run a very simple agent on all the machines that participate in the STAF testbed. Every machine can then run services on any other machine, subject to a so-called trust level. In practice, one machine will act as what I called the 'test management' machine, and will coordinate the test runs by sending jobs to the test clients. STAX is one of the services offered on top of the low-level STAF plumbing. It greatly facilitates the distribution of jobs to the test clients and the collection and logging of test results. STAX jobs are XML files spiced up with special <script></script> tags that contain Python code (actually Jython, but there are no differences for the purpose of this tutorial). This in itself was for us a major reason for choosing STAF over other solutions.Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com2tag:blogger.com,1999:blog-8486730092200937906.post-57875500581429369422007-07-16T21:24:00.000-07:002007-08-07T06:12:30.519-07:00Common mistakes of software developers (cont.)Some of the common problems are listed:<br /><br /><span style="font-weight:bold;">MY PROBLEM IS DIFFERENT <br /><br /></span>Many designers and programmers refuse to listen to the experiences of others, claiming that their application is different, and of course much more complicated. Designers should be more open-minded about the similarities in their work. In response, ask “what is different in the LCD display software in a cellular phone versus one on a temperature controller? Are they really different?” Comparing control and communication systems side-by-side, both are characterized by modules that have inputs and outputs, with a function that maps the input to the output. A 256 by 256 image processed by a algorithm might not be very different from graphical code for a LCD dot matrix display of size 320 by 200. Furthermore, both use hardware with limited memory and processing power relative to the size of the application; both require development of software on a platform other than the target, and many of the issues in developing software for a micro-controller. The timing and volume of data is different. But if the system is designed correctly, these are just variables in equations. Methods to analyze resources such as memory and processing time are the same, both may require similar real-time scheduling, and both may also have high-speed interrupt handlers that can cause priority inversion. Perhaps if control systems and communication systems are similar, so are two different control applications or two different communication systems. Every application is unique, but more often than not the procedure to specify, designs, and build the software is the same. Embedded software designers should learn as much as possible from the experiences of others, and not shrug off experience just because it was acquired in a different application area.<br /><br /><br /><span style="font-weight:bold;">Large if-then-else and case statements<br /></span> <br />It is not uncommon to see large if-else statements or case statements in embedded code. These are problematic from three perspectives<br /><br />1.) They are extremely difficult to test, because code ends up having so many different paths. If statements are nested it becomes even more complicated. <br /><br />2.). The difference between best-case and worst-case execution time becomes <br />significant. This leads either to under-utilizing the CPU, or possibilities of timing errors when the longest path is taken.<br /><br />3.) The difficulty of structure code coverage testing grows exponentially with the number of branches, thus branches should be minimized.<br /><br /> This example confuses new testers who lack in programming experience.<br />Developers think their code is always correct and as mentioned earlier 99 % errors are corrected by themselves and remaining 1%.errors will be found out by testers. In the below example the <br /><br />IF (0 < x < 12) then<br /> SYSTEM.OUT.PRINTLN (“Month is” & i);<br />Else<br /> SYSTEM.OUT.PRINTLN (“Invalid input”);<br /><br /><br /> Consider how this code could fail. Here are some of the simple programming errors that are very common mistakes that can go wrong:<br /><br />a) Suppose the programmers said less than or equals instead of less than. The program would eject 0 as bad character. The only way to catch the error I by testing with 0.<br /><br />b) If the code is written as less than 12 instead of less than or equal to 12, the program would go wrong. <br /><br /><br />“Testers with just the four boundary characters, /, 0, 9, and: will reveal every classification<br />Error that the programmer could make by getting an inequality wrong or by mistyping”<br /><br /><span style="font-weight:bold;">Error Handling:</span><br /> <br /> Errors in dealing with errors are common. Error handling errors include failure to anticipate the possibility of errors and protect against them, failure to notice error conditions, and failure to deal with a detected error in a reasonable way. Many programmers correctly detect errors but then branch into untested error recovery routines. These routines’ bugs can cause more damage than the original problem.<br /><br /> Some times the errors are more even large while executing the tests and the Microsoft’s worst scenario is we can’t copy the error messages. There are some tools for copying the text of such error messages and also we can take the screen shots.<br /><br /><span style="font-weight:bold;"><br />Conclusion:</span><br /><br /> Testers should have a common sense in smelling the non obvious things. There is a relation between developers and testers in fixing the bugs. The probability of fixing the bugs is always depends on the way the test cases are communicated. Test cases play a major role in the QA's life. Test Cases are written in such a way that they are traceable, self contained and should not be duplicated in preparing they should always be atomic.<br /><blockquote><br /><br /><span style="font-weight:bold;"><br />"Why go into something to test the waters? Go into it to make waves"<span style="font-style:italic;"></span></span></blockquote><br /><br /><br /><br /><br /><span style="font-weight:bold;">HAPPY TESTING</span>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-15517638955410224072007-06-02T03:40:00.000-07:002007-06-02T03:44:47.893-07:00Common mistakes of Software developers<span style="font-weight:bold;">Introduction:<br /> </span><br /> Most Software developers are not even aware that there favorites methods are problematic. Quite often experts are self thought, hence they tend to have the same bad habit as when they first began, usually because they never witnessed the better ways of performing their embedded systems. These experts then train novices who subsequently acquire the same bad habits. The purpose of this presentation is to improve the awareness to common problems, and to provide a start towards eliminating mistakes and thus creating software that is more reliable and easier to maintain.<br /><br /> It is easy for spending a million on testing a program. Common estimation of the cost of finding and fixing the errors in program range from 40% to 80% of total development cost. Companies don’t spend this kind of money to “verify that a program works”. They spend it because the program doesn’t work, it has bugs and they want them found. No matter what development methodology they follow, their programs still end up with bugs. Beizer’s (1990) review estimation the average number of errors in program released to testing at 1 to 3 bugs per 100 executable statements. There are big differences between programmers, but no one’s work is error-free.<br /><br /> One error per 100 statements is an estimate of public bugs; the ones still left in program after the programmer declares it error-free Beizer (1984) reported his private bug rate, how many mistakes he made in designing and coding a program, as 1.5 errors per executable statement. This includes all mistakes including typing errors.<br /><br />“At this rate, if your programming language allows one executable statements per lines, you make 150 errors while writing a 100 lines program.”<br /><br /> Most programmers catch and fix more than 99% of their mistake before releasing a program for testing. Having found so many, no wonder they think they most found a lot. But they haven’t .Tester’s job is to find the remaining 1%.<br /><br /> Correcting just one of the mistakes within a project can lead to week or months of savings in manpower (especially during the maintenance place of a software life cycle.).Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-14258671855940228582007-05-25T00:06:00.000-07:002007-05-25T03:05:17.904-07:00Mail from Mr. Pradeep SoundararajanFor a long time i wasn't unable to update my blog after recieving the mail from Mr.Pradeep Soundararajan.<br /><br /><blockquote><br />Hi Amardeep,<br /><br />I am sure you know at least a little about me and you might not need my introduction. I found my blog linked to yours and as it seemed to be on testing, I did want to peruse it.<br /><br />I was impressed by the fact that you linked people James and Dr Cem Kaner with respect of Mr. I intended to make you a few suggestions to help you write better posts.<br /><br /> 1. The copy paste stuff never makes someone read your blog, since there are so many copy pasted stuff. All people might want to read is your experience, be it little or whatever or your day to day testing activities, the problem you face, the problems you solve, the testers you meet and lots more.<br /> 2. You might also want to read this: http://testertested.blogspot.com/2006/11/indian-testing-community-start.html<br /><br />Best wishes and Happy Testing!<br /></blockquote><br /><br /><br /> I feel really good after recieving the mail from <br />Mr.Pradeep Soundararajan. I always want to write my own experiences and thoughts after reading his mail. i will do my best in improving my blog and skills. <br /><br /><br />DEAR UPCOMING TESTERS : this mail is not only for me, but for all of you who just want to become the stars in TESTING INDUSTRYExplorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com1tag:blogger.com,1999:blog-8486730092200937906.post-15895729339488226052007-05-08T04:52:00.000-07:002007-05-25T00:23:15.265-07:00why do software fails !Generally speaking, there are bugs in software because of unclear requirements, software complexity, programming errors, changes in requirements, errors made in bug tracking, time pressure, poorly documented code and/or bugs in tools used in software development.<br /><br /> * There are unclear software requirements because there is miscommunication as what the software should or shouldn't do.<br /><br /> * Software complexity. All of the followings contribute to the exponential growth in software and system complexity.<br /><br /> * Programming errors occur because programmers and software engineers, like everyone else, can make mistakes.<br /><br /> * As to changing requirements, in some fast-changing business environments, continuously modified requirements are a fact of life. Sometimes customers do not understand the effects of changes, or understand them but request them anyway. And the changes require redesign of the software, rescheduling of resources and some of the work already completed have to be redone or discarded and hardware requirements can be effected, too.<br /><br /> * Bug tracking can result in errors because the complexity of keeping track of changes can result in errors, too.<br /><br /> * Time pressures can cause problems, because scheduling of software projects is not easy and it often requires a lot of guesswork and when deadlines loom and the crunch comes, mistakes will be made.<br /><br /> * Code documentation is tough to maintain and it is also tough to modify code that is poorly documented. The result is bugs. Sometimes there is no incentive for programmers and software engineers to document their code and write clearly documented, understandable code. Sometimes developers or programmers feel they cannot have job security if everyone can understand the code they write, or they believe if the code was hard to write, it should be hard to read.<br /><br /> * Software development tools, including visual tools, class libraries, compilers, scripting tools, can introduce their own bugs. Other times the tools are poorly documented, which can create additional bugs.Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-50291462753901482872007-04-27T06:17:00.000-07:002007-04-27T07:12:17.339-07:00Globalization Testing<strong>Globalization Testing</strong> ensures the application can function in any culture/locale. The goal of globalization testing is to detect potential problems in application design that could inhibit globalization. It makes sure that the code can handle all international support without breaking functionality that would cause either data loss or display problems. The following must be part of your globalization-testing plan:<br /><br />1.) <strong>Decide the priority of each component :</strong><br /><br /> To make globalization testing more effective, assign a testing priority to all tested components. Components that should receive top priority: <br /><br />* Support text data in the ANSI (American National Standards Institute)format.<br /> <br />* Extensively handle strings (for example, components with many edit controls).<br /><br />* Use files for data storage or data exchange (e.g., *<a href="http://en.wikipedia.org/wiki/Windows_Metafile">Windows metafiles</a>, security configuration tools, and Web-based tools).<br /><br />2.) <strong>Select a test platform,</strong><br /><br />3.) <strong>Create the test environment,</strong><br /><br />4.) <strong>Execute tests,</strong><br /><br />5.) <strong>Recognize the problems.</strong><br /><br /><br /><blockquote><em>LIFE begins when we loose,<br /><br />LIFE ends when we win,<br /><br />So, make sure that you always win.</em><br /><br /> -------<strong>AMAR DEEP MARADANA</strong><br /></blockquote>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-25374871627198826312007-04-26T06:53:00.000-07:002007-04-26T07:16:52.866-07:00Localization testing<span style="font-weight:bold;">Localization :</span> is a service that are acceptable for a particular culture or locale that makes users to accept the adaptable software. For example MS OFFICE is used in many languages as a packagable software, as i use the software in english and others may use in Japanese or Hindi etc. <br /><br /> Localization testing checks how well the build has been translated into a particular target language. This test is based on the results of globalized testing where the functional support for that particular locale has already been verified. If the product is not globalized enough to support a given language, you probably will not try to localize it into that language in the first place!Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-3909794636090039062007-04-26T04:09:00.000-07:002007-04-27T06:57:28.482-07:00Bug Tracking System<span style="font-weight:bold;">Bug Tracking System</span> is an application used for programmers to track of software bugs in there work. it is essential in companies and used in doveloping software products. A major component of bug tracking system is database that records facts about known bugs. Facts may include the time of the bug was reported, its severity, the erroneous program behavior, and details on how to reproduce the bug; as well as the identity of the person who reported it and any programmers who may be working on fixing it. <br /><br /> In a corporate environment, a bug-tracking system may be used to generate reports on the productivity of programmers at fixing bugs. However, this may sometimes yield inaccurate results because different bugs may have different levels of severity and complexity. The severity of a bug may not be directly related to the complexity of fixing the bug. There may be different opinions among the managers, architects and the developers about the relative ease of fixing bugs.Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-59775125770712938012007-04-14T05:10:00.000-07:002007-05-27T03:18:15.931-07:00About Test CasesTest cases plays a major role in the QA's life. The probability of fixing the bugs is always depends on the way the test cases are communicated. They should never be confused. Test Cases are written in such a way that they are tracable,self contained and should not be duplicated in preparing they should always be atomic. So every tester has to spend some time on the test cases before writing. Test conditons has to be clear and most of the test conditions wont be clear,so deep thinking is necessary for the testers. In the context to the DEEP THINKING, I do like to discuss an example given by the Jsmes Bach.<br /><br />REQUIREMENTS :<br /> 1.THERE ARE FOUR CARDS. (cards are E,7.V.4)<br /> 2.THERE IS A LETTER ONE SIDE AND A NO. ON REVERSE SIDE.<br /> 3.IF THERE IS A VOWEL ON ONE SIDE AND A EVEN NO. ON OTHER SIDE.<br /><br />In this Requirements, if we consider the first case which is clear, where as in second and third cases where the deep thinking should be there.<br /><br />So for a Tester, deep thinking is always an important.<br /><br />One of my friend asked a question about test requirement, i wondered how to answer to his question. One of the requirement in the web page is to check the back ground colour of the Username and Password.HE asked me whther i will check or not. I thought for a second and gave the answer, as "i will check the background colour of both the fields",but the thing is we have to make sure of the TEXT of the font colour also is checked. Even though iam wrong in this Example i learnt a new thing in Exploring a my knowledge towards the SOFTWARE TESTING.<br /><br /><br /><blockquote> NEVER GIVE UP TILL YOU SUCCEED </blockquote>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-7593135616927991462007-04-09T06:40:00.000-07:002007-04-09T06:51:54.531-07:00KEY PRINCIPLES OF SOFTWARE TESTING1) TESTING ALWAYS SHOWS THE PRESENCE OF DEFECTS.<br /> <br />2) EXHAUSTIVE TESTING IS POSSIBLE.<br /><br />3) EARLY TESTING.<br /><br />4) DEFECTIVE CLUSTERING.<br /><br />5) PESTICIDE PARADOX.<br /><br />6) TESTING IS CONTEXT DEPENDENT.<br /><br />7) ABSENCE OF ERRORS IS FAILURE.Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0tag:blogger.com,1999:blog-8486730092200937906.post-62337122837868294522007-04-08T01:38:00.000-07:002023-01-25T20:53:00.328-08:00Bugs per lines of codeBooks that reports or web site that addresses the topic of bugs per line of code
The book "Code Complete" by Steve McConnell has a brief section about error
expectations. He basically says that the range of possibilities can be as
follows <div><b>(a) Industry Average:</b> "about 15 - 50 errors per 1000 lines of delivered
code." He further says this is usually representative of code that has some
level of structured programming behind it, but probably includes a mix of coding
techniques. </div><div><b><br /></b></div><div><b>(b) Microsoft Applications:</b> "about 10 - 20 defects per 1000 lines of code
during in-house testing, and 0.5 defect per
<span style="font-weight: bold;">KLOC</span> (<span style="font-weight: bold;">KLOC</span>
IS CALLED AS 1000 lines of code) in released product (Moore 1992)." He
attributes this to a combination of code-reading techniques and independent
testing (discussed further in another chapter of his book). </div><div><b><br /></b></div><div><b>(c) "Harlan Mills pioneered 'cleanroom development'</b>, a technique that has
been able to achieve rates as low as 3 defects per 1000 lines of code during
in-house testing and 0.1 defect per 1000 lines of code in released product (Cobb
and Mills 1990). A few projects - for example, the space-shuttle software - have
achieved a level of 0 defects in 500,000 lines of code using a system of format
development methods, peer reviews, and
<a href="https://www.digistore24.com/redir/456091/Amaradana/" target="_blank">statistical testing</a>."</div><div><br /></div><div>Vinnie Murdico Software
with Brains, Inc. </div><div>SWBTracker - Value-Priced Defect Management Software </div><div>http://www.softwarewithbrains.com
</div>Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com9tag:blogger.com,1999:blog-8486730092200937906.post-62960080345176088732007-04-08T01:35:00.000-07:002007-04-08T03:22:52.168-07:00dear tester'sthis was my first post. i do like to update this blog every day and i need all your assistance for the people who just started learning the testing.Explorehttp://www.blogger.com/profile/05260796550075594266noreply@blogger.com0