21 st century Software Testing

Source: Internet
Author: User

The original Article is translated from testing in 21st century for your consideration. From my personal point of view, the 21 st century test can be simply summarized into three sentences (three paragraphs ):

  1. Full-process software testing, testing is the top priority.
  2. The whole process of automated testing can have been like this.
  3. The entire process of Defect Prevention, testing is not so important.

------------ Translation -----------------

Driven by the current business and IT environment, software testing concepts, practices, and tools are undergoing some revolutionary changes. What will this change affect professional testers and their testing work?

 

These drivers are changing the lives of professional testers.

The business environment for IT operations is changing, which directly affects how business and it think about professional testers. The test is not only a guard, but also an advocate of change. Some testers detect risks early enough to increase the efficiency of software development and deployment. The driving factors of this change come from:

  • More and more common people are using it or IT systems.
  • Time-to-market pressure
  • Rapid changes in the business environment
  • Impact of software application rules
  • Willingness to reduce the ROI cycle
  • Smart spending on it-failure rates for large projects are still high
  • More types or forms of IT systems, platforms, and languages used to build them

Software testing andSDLC(Software development lifecycle) software testing is no longer an afterthought.

 

Test Plan is an indispensable part of the Project Plan

Testing is becoming more complex than ever before. A typical enterprise application system always requires key integration with other internal and external application systems. Most applications
There are various functional and non-functional testing tasks (from availability, performance, scalability to deployment and installation) that require prior planning for the environment, test data collection, and professional skills. Some of them are expensive.
Long preparation time. In the absence of preliminary planning, testing will become the bottleneck of the project, and this will become the consensus of everyone. Therefore, the test plan becomes more and more active, and the project is planned from the very beginning.

A gradual plan is becoming increasingly necessary. More and more questions are answered in advance, and the questions are planned when they approach the test execution.

Early participation of the test team is mandatory

From early discovery and revision of issues to provision of predictability, significant cost savings, and efficient changes, IT organizations are realizing significant benefits.

For a professional tester, both opportunities and challenges coexist. This is an inevitable requirement for collaboration. testers with multiple skills can eliminate the gap between business and technology and understand practical methods and tools that make the preliminary test feasible.

Some skills are common:

  • Good analytical skills, recognized by customers and business analysis experts
  • Allows you to quickly create an automatic testing framework that adapts to multiple code changes.
  • Not only is it an expert of automated testing tools, but also an expert of automated testing. It is able to develop suitable tools when necessary.
  • Test and design skills based on business value and related technical risks

Testability is a design standard

Early testing participation is an irreplaceable requirement. For example, testability has increasingly become a design standard to allow early, effective, fast, and maintainable test creation. Collaboration between testers and developers is extremely important.

Examples of how or where testability can be used as design standards can help with testing and automated testing, such:

  • Ensure that the user interface and business logic are separated so that we can test (user interface or business layer) at the appropriate level ). This allows testing tools (suchFit/fitnesse)You can use APIs to test the UI without final determination or UI.
  • You can use the ID of the UI object more effectively to perform automated UI testing.
  • When the external system is unavailable or is still in the development stage, build a configurable simulation system to test the application.

New trends in software testing

  • Test from the perspective of "excellent and small"-Test how to eliminate waste in the delivery process. This idea can indeed drive a change in terms of tools and building a more collaborative test concept. This testing philosophy can take into account the capabilities of each individual in the IT project, not just testers.
  • Testing as a continuous feedback mechanism-Testing is gradually becoming a continuous feedback mechanism, rather than scheduled activities at the end of the development cycle. In a build pipeline, functional testing integrated into the continuous event-driven mechanism means testing is driven by application changes, not timelines.
  • More advanced languages for defining tests -These languages can be understood by non-IT customers. This allows others to understand the test and allows different project stakeholders or stakeholders (stakeholder) to understand the value of the test.
  • Automation started early in the project lifecycle -
    Developing tools and frameworks make testing and maintenance a relatively simple task. We believe that because the test code is similar to the code of the developer, it can also benefit from the development practices in the quick development environment, as shown in
    Refactoring (used to make small design changes in the Code without affecting behavior. Supported by many existing IDES) and a test framework based on good object-oriented programming.
  • Not justGuiDriver TestAnd drive tests through various layers of the GUI (including the underlying layer. For example, testing is just as important as feedback, so no matter at which level testing is conducted, the key is to provide feedback on whether the application being built is correct. For example, the fit/fitnesse testing framework helps build reusable, scalable, and readable non-gu Test suites.
  • Open-source software as a possible replacement for commercial testing tools -Commercial tool providers do not have absolute advantages in the field of automated testing. A large community of developers and testers is implementing extensive use and development of open-source tools. Successful tools and frameworks (such as Selenium and fitnesse) are powerful proofs of open-source tools in the testing field.

New Generation of professional testers

Testers are no longer seen as funny people (monkey tester) or disappointing people (Party posters), but stakeholders who can successfully deliver applications in the product environment.

  • Testers are represented by customers and stakeholders.
  • Testers need to demonstrate their understanding of the business, customer needs, and actual market conditions.
  • Testers protect the interests of customers and stakeholders, and support developers to develop better software products.
  • Testers help the development team avoid deviation from the correct track (the situation is not out of control ), such as risk suppression, building the right things in the right way, and detecting weak links or areas of applications early in the development cycle.
  • Testers will gradually switch the hostility between the test and the development team to the collaboration relationship.


Organizations in the 21st century need to introduce tests early in the delivery cycle to provide rapid feedback and build secure and complete automated tests to meet the needs of rapid application changes.
And let users participate in building correct and valuable tests earlier. To achieve this, they need multi-skill vocational training to obtain the most advanced testing methods. Independent testers cannot bring Test
High Efficiency: collaboration between testers and business experts, testers and developers, and between testers and end users is required. Encourage the use of agile methods, tools and technologies to facilitate collaboration anytime, anywhere
Well respond to changes.

Refer:
Fit/fitnesse:


Http://fit.c2.com/


Http://www.fitnesse.org/


Http://gojko.net/fitnesse/fixturegallery/


Http://www.fitnesse.info/

 

Selenium:

  • Http://www.openqa.org/selenium/
  • Open-source testing tools/communities (selenium/openqa.org) -- today and now
  • Powerful open-source Web Testing Tool-Selenium
  • Complete Solution for Open-Source testing tools
  • Technology Promotion-full Software Testing


Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.