All too often, automated testing tools are expected to save the day by making up for too little time, resources, or expertise. Unfortunately, when these expectations are inevitably disappointed, automation or the tool itself gets a bad name. Before any effort can be deemed a success, realistic expectations must be set up front.
通常,自动化测试工被期望弥补只有少量的时间和资源的测试。不幸的是,当这些期望通常会落空,自动化工具本身得到一个坏名声。设定切合实际的期望是成功的关键。
There are three important things to remember when setting expectations about test automation: one, an initial as well as ongoing investment in planning, training and development must be made before any benefits are possible; two, the time savings come only when automated tests can be executed more than once, by more than one person, and without undue maintenance requirements; three, no tool can compensate for the lack of expertise in the test process.
还有要记住着手测试自动化的预期时,三个重要的事情:一,在获得收益之前,前期应该进行持续不断的投资计划、训练和开发中;二,只有自动测试可以被多个人不需进行维护而可直接执行多次时才可以节约时间;三,没有工具可以弥补在测试过程中缺乏专业知识。
Test automation is strategic
自动化测试是战略
If your test process is in crisis and management wants to throw money at a tool to fix it, don’t fall for it. Test automation is a long term, strategic solution, not a short term band-aid. Buying a test tool is like joining a health club: the only weight you have lost is in your wallet! You must use the club, sweat it out and invest the time and effort before you can get the benefits.
如果您的测试进程正处于危机之中,管理层希望把钱扔在一个工具来修复它,不要上当。测试自动化是长远来看,战略解决方案,不是一个短期治标不治本。购买一个测试工具就好像是加入一个健康俱乐部: 你有的体重是在你的钱包 !你必须使用俱乐部、 出一身汗了和投入时间和精力之后你才可以得到好处。
Use consultants wisely
明智的使用顾问
Along the same lines, be wary about expecting outside consultants to solve your problems. Although consultants can save you time by bringing experience to bear, they are not in and of themselves a solution. Think of consultants as you would a personal trainer: they are there to guide you through your exercises, not to do them for you!Paying someone else to do your situps for you will not flatten your stomach.
按照同样的思路,要警惕期待外部顾问来解决你的问题。尽管顾问可以通过经验为您节约时间成本,他们不是在做自己的解决方案。想想顾问,你会一个私人教练:他们在那里指导你的练习,不是要他们做仰卧起坐,他们坐了仰卧起坐对你对你起不来任何作用!
Here’s a good rule of thumb to follow when setting expectations for a test tool. Calculate what your existing manual test iteration requires,then multiply by (5) five for a text-based user interface and (10) ten for a GUI, then add on the time scheduled for training and planning.GUI interfaces have inherently more complexity than text interfaces.
这里有一个很好准则在为测试工具设置预期。要遵循。计算你现有的手动测试迭代的要求,然后乘以 (5) 五个基于文本的界面及 (10) 十一个 GUI,然后添加在时间安排在培训和规划。图形化用户界面已经比文本接口本质上更多的复杂性。
This will approximate the time it will take to properly automate your manual tests. So, if it takes you two weeks to execute one iteration of tests manually, plan for ten to twenty weeks after training and planning are complete to get through your first automated iteration.From there on out, though, you can cut each iteration in half or more.Naturally, these are only approximations and your results may be different. For intensive manual test processes of stable applications,you may see an even faster payback.
这预计一个大概的时间自动化您的手动测试。所以,如果你花两周执行手动测试的一个迭代,计划十到二十周的培训和规划来完成你的第一个自动迭代。从那里出来的,不过,你可以将每个迭代一半或一半以上。当然,这些仅仅是近似的,你的结果可能是不同。在稳定的应用密集的手工测试的过程中,你可能会看到一个更快的投资回报。
Not everything can be automated
并非一切都可以实现自动化
But remember, you must still allow time for tasks that can’t be automated - you will still need to gather test requirements, define test cases, maintain your test library, administer the test environment,and review and analyze the test results. On an ongoing basis you will also need time to add new test cases based on enhancements or defects, so that your coverage can constantly be improving.
但要记住,你仍然必须留出时间,不能自动化任务 - 你仍然需要收集的测试需求,定义测试用例,保持你的测试库,管理的测试环境,并审查和分析测试结果。在现有基础上,你还需要时间来添加基于增强或缺陷的新测试用例,让您的覆盖范围可以不断地提高。
Accept gradual progress
循序渐进
If you can’t afford the time in the short term, then do your automation gradually. Target those areas where you will get the biggest payback first, then reinvest the time savings in additional areas until you get it all automated. Some progress is better than none!
如果你不能承受的时候,在短期内,然后做你的自动化逐步显现。针对那些地方,你会得到最大的回报,再重新投资节省的时间在其他领域,直到你得到它的所有自动化。一些进步总比没有好!
Plan to keep staff
计划保持测试人员
As pointed out earlier, don't plan to jettison the majority of your testing staff just because you have a tool. In most cases, you don’t have enough testers to begin with: automation can help the staff you have be more productive, but it can’t work miracles. Granted, you may be able to reduce your dependence on temporary assistance from other departments or from contractors, but justifying testing tools based on reducing staffing requirements is risky, and it misses the point.
正如前面指出的,不能仅仅因为你有一个工具就抛弃你的大部分测试人员。在大多数情况下,你没有足够的测试人员去开展自动化:自动化能帮助您的员工更有效率,但它不能创造奇迹。当然,你可能能够减少对其他部门临时援助的依赖,但证明的基础上减少了人员编制要求的测试工具是有风险的,它是被忽略的一点。
The primary goal of automation should be to increase test coverage, not to cut testing costs. A single failure in some systems can cost more than the entire testing budget for the next millennia. The goal is not to trim an already slim testing staff, it is to reduce the risk and cost of software failure by expanding coverage.
自动化的首要目标应该是提高测试覆盖率,而不是削减测试成本。在一些系统中的单个故障可以花费多于整个测试预算下一个千年。目标不是去消减一个已经很精简的测试团队,它是通过扩大覆盖范围,以减少软件故障的风险和成本。
Reinvest time savings
投资节省时间
As your test automation starts to reap returns in the form of time savings, don’t automatically start shaving the schedule. The odds are that there are other types of tests that you never had time for before, such as configuration and stress testing. If you can free up room in the schedule, look for ways to test at high volumes of users and transactions, or consider testing different platform configurations.Testing is never over!
当您的测试自动化开始可以节约时间,不要自动开始删减计划表。更可能的是是其他类型的你从未有时间为之前,如配置的测试和压力测试。如果你可以空余的其他时间,寻找方法来进行高容量的用户和交易测试,或考虑测试不同的平台配置。测试是永远不会结束!
When setting expectations, ask yourself this question: Am I satisfied with everything about our existing test process, except for the amount of time it takes to perform manually? If the answer is yes, then automation will probably deliver like a dream. But if the answer is no,then realize that while automation can offer great improvements, it is not a panacea for all quality and testing problems.
当设定期望的时候,问自己这个问题:我很满意我们现有的测试过程中的一切,除了需要手动执行的时间吗?如果答案是肯定的,那么自动化将提供像一个梦。如果答案是否定的,然后意识到,自动化可以提供很大的改进,它不是万能的对所有的质量和测试问题。
The most important thing to remember about setting expectations is that you will be measured by them. If you promise management that a testing tool will cut your testing costs in half, yet you only succeed in saving a fourth, you will have failed! So take a more conservative approach: be up front about the initial investment that is required,and offer cautious estimates about future savings. In many cases,management can be satisfied with far less than you might be.
要记住设定预期的最重要的事情是,你会被他们的衡量。如果你答应了管理一个测试工具会降低你的测试成本降低一半,但你实际只能节约四分之一,你就失败了!因此,采取了较为保守的做法:冲到前面约所需的初始投资,并提供对未来的储蓄谨慎的估计。在许多情况下,管理层可以得到不能满意与你可以做到的。
For example, even if you only break even between the cost to automate and the related savings in direct costs, if you can show increased test coverage then there will be a savings in indirect costs as a result of improved quality. In many companies, better quality is more important than lower testing costs, because of the savings in other areas:failures can impact revenues, drive up support and development costs, and reduce customer confidence.
例如,即使你实施自动化和相关的节约直接成本之间持平,如果你能证明提高测试覆盖率,然后提高质量的间接相当于节省了成本。在许多公司,更好地质量比降低测试成本更重要,因为在其他的领域: 失败可以影响收入,提高了开发成本,减少客户的信心。