-2

我想开发一个框架。实际上,当框架完成后,我会将其打包并发送给用户(例如 jar 包)。他们将无法更改源代码。但他们会更改 xml 或 csv 文件进行配置。例如,我的来源有前程序、后程序和 20 次测试。我遇到了 3 个问题;1-我想执行 20 个测试执行不同的浏览器。通常我在程序之前设置浏览器。如何在运行时更改浏览器。2- 我想对我的测试程序进行分组。然后我只能运行其中的 5 个程序。我如何对测试进行分组以及如何设置某人会运行而某人不会运行。而且我必须在不接触源代码的情况下做到这一点。3-我想做一个详细的报告系统。它将记录脚本的每一步。(用户登录成功,菜单打开成功等。)

哪个框架可以做到这些?测试?或者是什么?

谢谢你的帮助

4

1 回答 1

0
  1. 我没有看到问题,您可以在每次开始测试之前创建一个全新的浏览器实例,在那里您可以选择它应该是 IE、Chrome 还是 FF。您可以为您的测试类使用参数,它们将在@BeforeTest 中检查并打开相应的浏览器。
  2. TestNG 和 jUnit 支持组,我更喜欢 TestNG,因为它更灵活
  3. 只有 selenium 1 具有逐步日志记录,afaik selenium 2 不支持其中任何一个。我所做的是创建一个新类“TestElement”,它为硒方法提供了日志记录。在那里我刚刚创建了一个新的assertThat,它记录了失败和成功

    public static <T> void assertIt(String reason, T actual, Matcher<?> matcher)
    {
        Description description = new StringDescription();
        description.appendText(reason).appendText("Expected: ")
            .appendDescriptionOf(matcher).appendText(", Actual: ")
            .appendValue(actual);
        String desc = description.toString();
        if (!matcher.matches(actual))
        {
            TestLog.log(desc, TestLog.LogLevel.FAIL);
            throw new AssertionError(desc);
        }
        else
        {
            TestLog.log(desc, TestLog.LogLevel.PASS);
        }
    }
    
于 2013-07-19T08:08:29.977 回答