📜  Concordion教程(1)

📅  最后修改于: 2023-12-03 15:14:14.095000             🧑  作者: Mango

Concordion教程

Concordion是一个基于Java的开源自动化测试框架,它能够将业务需求和测试用例自然地结合起来,让测试结果更加贴近实际业务场景。Concordion具有以下特性:

  • 能够在自然语言中编写测试用例;
  • 支持测试驱动开发(TDD);
  • 与Junit、TestNG等测试框架无缝集成;
  • 支持Web UI和API自动化测试;
  • 丰富的插件库,能够满足各种需求。
安装和配置
环境要求
  • JDK 8或以上;
  • Maven或Gradle。
引入依赖

通过Maven或Gradle来添加Concordion到你的项目中。

Maven

在pom.xml中添加以下依赖:

<dependency>
    <groupId>org.concordion</groupId>
    <artifactId>concordion</artifactId>
    <version>2.2.0</version>
</dependency>

Gradle

在build.gradle中添加以下依赖:

dependencies {
    testCompile 'org.concordion:concordion:2.2.0'
}
配置Concordion

在测试类中,需要添加ConcordionRunner来运行测试用例,并且需要指定测试用例的目录。

@RunWith(ConcordionRunner.class)
@ConcordionResources("/concordion.css")
public class MyTest {
    @Extension
    private MyExtension myExtension = new MyExtension();

    public void setName(String name) {
        // 占位符方法
    }
}

其中,@ConcordionResources是用来指定测试报告的CSS样式文件目录,@Extension是用来添加扩展的。

编写测试用例

Concordion使用HTML来编写测试用例。测试用例的编写分为三个部分:

  1. Fixture:测试用例的前置条件,可以是Java对象或者是HTML文件;
  2. Interaction:测试步骤;
  3. Verification:验证步骤。

一个简单的示例:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
        xmlns:concordion="http://www.concordion.org/2007/concordion">
<head>
    <title>Concordion示例</title>
    <meta charset="utf-8"/>
    <link rel="stylesheet" type="text/css" href="/concordion.css" />
</head>
<body>
    <h1>测试标题</h1>
    <p concordion:execute="#name=John Doe">设置名称: <input type="text" name="name"/></p>
    <p concordion:assertEquals="#name">名称为: <span concordion:id="name">名称</span></p>
</body>
</html>

其中,concordion:execute用于执行方法,concordion:assertEquals用于验证结果。

扩展

Concordion提供了多种扩展方式:

  1. 属性扩展:通过@ConcordionExtension注解来实现;
  2. 插件扩展:通过编写插件来实现;
  3. 指令扩展:通过自定义指令来实现。

具体用法可以参考官方文档。

结语

以上就是Concordion的入门指南,如果您想深入了解,可以参考官方文档,里面详细介绍了Concordion的各种用法和实例。