Introduction:
Zhang Shi (Zhang Shi); English name: Kelly Zhang
KellyZ@Microsoft.com
Software development and testing Director
Microsoft Office International Service testing department, Microsoft headquarters in the United States
Education Background: Bachelor of Science and Shuo Shi from Beijing Normal University
Bit. Ph.D. from New York State University
Experience: nearly nine years of software testing, testing project lead, and release coordination manager experience
Content directory
I. tripartite cooperation in project management, development and testing
2. Top 10 Challenges and Strategies for testers
3. Our opportunities
I. tripartite cooperation in project management, development and testing
Product project management, development and testing are equally important and indispensable:
Third parties need mutual understanding, support, collaboration and help
2. Top 10 Challenges and Strategies for testers
1. testers are considered inferior
2. the test time is never enough.
3. Lack of easy-to-use testing tools
4. Lack of specific and common testing technologies
5. It is difficult to clearly understand user needs and expectations
6. There is a lack of clearly measurable measurements for testing quality compliance
7. It is difficult to determine whether a test instance has been executed.
8. Difficult to find time for automated testing
9. documents required for testing are often incomplete
10. A lot of tasks are on the shelf, and it is difficult to guarantee the quantity.
1. The tester is considered inferior.
Very serious misunderstanding *: In the Work Selection of software enterprises, software testers are only entry-level positions *
Prejudice against software testing:
1. testers are delaying and blocking the timely release of software products.
2. If the released product has defects, the tester should be responsible
3. Developers must undergo special training, so testers do not need
4. Testing is much easier than development.
* Source: Ron Patton (2001) "Software Testing" bySamsPublishing
One challenge: cause and consequence
Cause:
I don't know what software testing is and what it includes.
Software development companies do not have standardized development and management procedures
Did not expect to develop high-level software, must have high-level testers
Consequence:
It causes psychological burden on testers and affects their work enthusiasm.
Testing staff shortage and staff loss
Directly affect product quality
One of the top ten challenges: Coping Strategies
Build confidence! General Trend: software testing has been paid more and more attention
Understanding the cause, correct attitude, and correct treatment
Focus on improving the technical level and let our practices prove our value
Establish a good working relationship in the company
Dare to give constructive comments
2. the test time is never enough.
The test cannot be completed on time.
Testing is always much more effort than testing with time
It is difficult for testers to determine the best effective test scope.
You don't have time to perform the best test step by step
Challenge 2: Causes and Consequences
Cause:
Heavy tasks
Too tight schedule
High-pressure work environment
Improper management of test and development procedures
Personal reasons
Consequence:
Excessive fatigue and mental burden
Hasty delivery, poor quality
Development Project coding delay
Top 10 challenges 2: Coping Strategies
Individuals: self-regulating, supplemented by request help
Analyze your test tasks at any time to prioritize them
Prepare multiple preparations in advance (several solutions and different test scopes)
Risk Analysis and Management
Timely communication. Report to superiors in advance
Propose constructive improvement measures
3. Lack of easy-to-use testing tools
No choice
Know the importance of the test auxiliary tool, but not in place
I don't know what functions the necessary auxiliary tools should have.
Challenge 3: Causes and Consequences
Cause:
External Purchases are too expensive
Most external purchases do not apply directly
No technical resource development in the company
No time for internal development
Technically not directly supported
Consequence:
Only manual tests are required.
Fatigue and mental burden
Hasty delivery, poor quality
Development Project coding delay
Top 10 Challenges 3: Strategies
Support for auxiliary tools required for testing should be taken into account during the product design phase
Best available auxiliary tools and Benefit Analysis
Analyze product features and determine the necessary functions of Auxiliary Tools
Self-Design and R & D
Microsoft practice:
1. Dedicated personnel for development and maintenance
2. Constantly improve self-developed automated testing Auxiliary Tools
3. Various product teams encourage themselves to develop test Auxiliary Tools
4. Reward and promote invention and creation
4. Lack of specific and common testing technologies
1. Black Box, white box, and gray box testing
2. Security Testing
3. Performance Testing
4. Automated Testing
Challenge 4: Causes and Consequences
Cause:
Diversity of software products
Software is always defective
No testing methods available for all software
There are no fixed rules for Testing Technology
Testing is a continuous practice.
Consequence:
Affects test quality and efficiency
Increased test difficulty
It takes time to try and determine the test method
Diversity of software products
Office and Business Applications)
Games)
Database Software)
Internet/website software (Internet/websites)
Operating system Software)
Multimedia and Animation software (Multimedia & Animation)
Image processing and Text Publishing and editing software (Graphics and Publishing)
Speech)
Handwriting, OCR and User Input
Editor: IME)
Software is always defective
1. Software complexity)
2. System Errors During source code compilation (Compiling and integration)
Error)
3. Human program error during encoding (Coding/programming errors)
4. Poorly formatted ented spec and
Design)
5. Human Information communication errors (Poor communication among testers, PM
And programmers)
6. A work environment with a Tight schedule and high pressure (Tight schedule and
High pressure working environment)
7. Changed design requirement)
8. Flaws in the software development assistance tool
Development tools)
Top 10 challenges 4: Strategies
Research and comparison of available technologies
Improve the ability to use existing technologies flexibly
Best practices for learning, application, and promotion
Self-improvement and team mutual assistance
Frequently communicate and discuss the best testing technology suitable for your own products
Explosion 1.
5. It is difficult to clearly understand user needs and expectations
Users who want to do what they want, but cannot
We hope that the customer satisfaction will be high after the product is released, but we do not know how to achieve it.
Challenge 5: Causes and Consequences
Cause:
New features not released are designed to be confidential
Lack of time and opportunities for direct contact with users
Lack of Usability study experts
Consequence:
Sometimes the user's expected behavior is incorrectly judged
Missing Important user use case testing
Affects user satisfaction
Top 10 challenges 5: Strategies
User Access
Market research
Actively participate in user trial product research (usability
Study)
Research on defects discovered by users (OFFBUG)
Collect User documents
Help after-sales service support
Access the user Q & A website
6. There is a lack of clearly measurable measurement of the testing quality.
Under what conditions can the tested products and functions meet the quality standards?
Mostly experience accumulation, not scientific and reliable
Many quantitative measurements are not comprehensive and accurate.
For example:
Defect quantity change trend, automated script code coverage
Passing test case 100% does not mean the test is complete.
If the test script runs 100% successfully, the test is not completed.
Challenge 6: Causes and Consequences
Cause:
Uncertainty: there are many uncertainties in product quality, making it difficult to determine the accuracy.
Difficult to quantify: the quality of the test function itself is difficult to quantify
Complexity: too many features of the product have an interactive effect.
Consequence:
Lack of basis for quality management and decision-making
Existing measurements, such as analysis or improper use, may lead to incorrect conclusions and judgments.
Testers must rely on experience and understanding to determine when and when the test is completed
Cheng
Top 10 challenges 6: Strategies
Identify available quality metrics and compare and analyze them
Research Measures for your own product quality
Precautions for using quantitative measurements
Quantitative Measurement and empirical judgment
'Good enough'
Note: whether the test is completed or not has a lot of empirical judgment factors.
1. Quantitative measurements are incorrect.
Suggestion: refer to another lecture: "software product quality measurement"
7. It is difficult to determine whether a test case has been completed.
Understanding the content, but the depth and breadth of the test differ too much, it is difficult to determine
Set the test scope and time required
Example: Verify that Microsoft
The date function = TODAY () in Excel changes accordingly.
Some include many sub-Cases
Note:
The tests covered by the written test cases may be a small part of the test scope!
Challenge 7: Causes and Consequences
Cause:
Different test case formats
The test scope of content coverage varies greatly.
Some are too general
Some include many sub-Cases
Testers have different understandings.
Time cannot be tested very fine
Consequence:
It is difficult to estimate the testing time and resources required
Misunderstandings may occur when testing cases are completed.
The time required by different testers is far from the test Scope
7 of the Top Ten Challenges: Coping Strategies
Specify the purpose and time of executing the test case in advance
Understanding customer expectations is more important for outsourcing test projects
Principle: Responsible for the product to the user!
Communication! Ask if you are not clear
Give full play to the test level: Full testing
Automated Testing
8 difficult to find the best time for automated testing
The results of automated testing are very important products.
One of the quantitative measurements (indicators), there is no reasonable automated test
Test Coverage rate may cause omission of important defects,
Resulting in poor product quality
If the function is not stable enough, it is not possible. If the function is stable, it is another test.
The test task also needs to be executed.
It takes a lot of time and effort to set up an environment for writing automated scripts.
The preparation of automated scripts, debugging, and error correction seems to be better than that during manual testing.
Multiple
Challenge 8: Causes and Consequences
Cause:
Insufficient function Stability
Automated auxiliary tools are not in place
Automated auxiliary tools take a long time to install and debug
Manual testing is too late
It takes too long to write automated scripts.
Fail to recognize the necessity and importance of Automated Testing
Consequence:
Without automated scripts, it is difficult to ensure that tested functions are continuously run.
It is difficult to ensure the overall testing quality and
Product Stability
Top 10 challenges: Coping Strategies
Principle: Make sure you want to implement automated testing! The more the better!
Identify the benefits and importance of Automated Testing
Make your request!
Plan ahead
Borrow existing resources
Merge associated tests
Multi-choice and multi-Question
Form routine test tasks
One or two days per week
9 documents required for testing are often incomplete
Function design document missing
Functional design documents are not detailed enough or are missing
Test Plan missing
Lack of test specifications and Cases
Existing test documents are not detailed enough or are missing
Challenge 9: Causes and Consequences
Cause:
No time to write detailed documents
There is no outsourced test project
The old feature (legacy features) is tested)
Consequence:
No reference, equal to no standard
Dependent on the professional level of testers and understanding of Products
It is difficult to determine and estimate the test scope and time required.
Difficult to ensure test quality
Puts more pressure on testers
9 of the Top Ten Challenges: Coping Strategies
Establish relevant development procedures in advance to ensure that the required documents for testing are in place on time
Communicate with project management, developers, and other related personnel to help them understand
Importance of the documentation required for release and Testing
Find ways to collect and archive functional design information
The Management Department plans to set up the resources required for documents and supervise the implementation.
Testers try their best to learn and understand the tested functions and list the test plans.
Plan/standardize and invite relevant personnel for review
The tester communicates with the test leader in advance about potential test quality risks.
More than 10 tasks are on the shelf, making it difficult to guarantee the quantity.
Each tester is responsible for testing several or even dozens of functions at the same time.
Each test takes a lot of time.
Each test should have automated coverage of the test.
Sometimes several test tasks must be performed simultaneously
Challenge 10: Causes and Consequences
Cause:
Insufficient testing staff
Test Management is not considered weekly
Improper test plan
Lack of testing personnel experience and technical skills
Consequence:
Chaotic Management
Poor test quality
Delivery in a rush without completion of tests
Delayed Delivery Date
High mental stress of testers
Top 10 challenges: Strategies
The test management director should consider optimizing the allocation function in advance
Clear scope of responsibility, comprehensive consideration and balance
Automated Testing
Test task list, plan, record, and track progress. (Demonstrate roadmap)
Priorities are prioritized based on milestones or other product progress
Determine the priority based on the stability of the function itself
Consider combining several tasks as much as possible
Timely reporting and communication
Key Points
Software Product Lifecycle test task route plan
3. Our opportunities
Software Industry is booming
Personally participate in the competition of catching up with the world's advanced level
Many job opportunities
Exercise to improve personal qualities
More challenging environments
We need to develop the best testing technology, method, and management suitable for our country's actual situation.
Arm up to meet challenges!
Our mission and burden
How should our testers arm themselves to embrace the new age of software
Test requirements and challenges ??
Mission: To better serve China's software testing field than the world's advanced
Give us the greatest power!
Start from now: cultivate excellent testing technology and management talents
Industry
Company/Enterprise
Department/team
Yourself!
Question?
Thank you! Welcome!