我们应该如何自动化系统测试?

时间:2011-03-10 02:43:19

标签: testing selenium cucumber salesforce specflow

我们正在构建基于SalesForce.com云的大型CRM系统。我正在尝试为系统制定一个测试计划,但我不确定如何创建系统范围的测试。我想为此使用一些行为驱动的测试技术,但我不确定如何将它们应用于平台。

对于我们将在系统中构建的自定义部件,我计划使用Cucumber of SpecFlow在UI上驱动Selenium操作。但对于SalesForce UI Customisations,我不确定测试的深度。工作流和验证规则等自定义可以封装我认为应该测试的许多复杂逻辑。

在SalesForce中为这个开箱即用的功能编写Selenium测试对于价值来说似乎过于繁琐。您能否与SalesForce.com平台分享您在系统测试方面的经验,我们该如何处理?

3 个答案:

答案 0 :(得分:6)

这是预先详细测试计划的问题。你试图猜测你会得到什么样的错误,有多少,以及在哪些方面。这可能很棘手。

也许您应该制定整体主测试计划,仅指定测试策略,主要工具集,风险,您希望在给定区域内进行多少测试的相对数量(基于风险)。
然后,当您开始处理给定的功能或迭代时(我希望您在迭代而不是瀑布中执行此操作),您为此组工作准备详细的测试计划。您可以根据以前部分的经验调整工具/估算/测试覆盖率 通过这种方式,您可以在开始时说出您的一般方法和优先级,但随着项目的进展,您可以让自己适应。

关于您需要对测试COTS进行多少测试的问题与任何软件相同:您需要评估风险。

  1. 如果您的软件需要 Validated因为外在的 法规(FDADoD ..) 你需要深入了解你的 测试,几乎测试整个应用程序。一 这里的问题可能是确保 外部调节器,为您提供工具 用于验证的验证 (这很麻烦)。

  2. 如果您的申请是 对贵公司至关重要, 比你还需要做很多 基于广泛风险的测试 分析

  3. 如果您的申请不受关注 以上所有,你可以去 打火机测试。也许你可以 跳过经过测试的功能 由平台制造商和焦点 在您的自定义上。在另一 我仍然会写测试(at 最少happy paths) 您将在您的工作流程中使用的工作流程 业务流程。

答案 1 :(得分:0)

当我们在2008年开始学习Selenium测试时,我们从SalesForce手册创建了Recruiting应用程序并创建了一套测试,并在blog中逐步描述了我们的路径。如果您决定编写Selenium代码来测试您的应用程序,它可能会帮助您入门。

答案 2 :(得分:0)

我认为SalesForce的问题是您已经进行了单元和UI测试,但是没有服务级别的测试。我看到的驱动Selenium UI的SpecFlow很脆弱,并且没有封装我在设计服务级测试解决方案时需要的东西:

(当我导航到“ / Selenium-Testing-Cookbook-Gundecha-Unmesh / dp / 1849515743”时  然后点击“立即购买”按钮  然后点击“继续付款”按钮

那不是Specflow的精神或意图。

鉴于我尚未选择产品 当我选择继续结帐时 然后确保收到消息

为了使用硒进行测试,您实际上必须将其转换为单击和键入,而在.NET领域中,您可以在中间层实例化对象等,并执行数百个实例和派生在相同的背景下(模拟设置)。

有人告诉我,您可以通过API公开SF,但存在一定的安全风险。我很想找到更多有关THAT的信息。