Citrusframework - Java 操作 - 获取结果
Citrusframework - Java action - Get result
除了 REST-API 调用,我需要调用我自己的 Java-Class,它基本上做了一些事情,我想在稍后的测试中通过 REST- 确认API-来电。
当调用我的 Java-Class 时,有一个预期的行为:它可能会失败,也可能不会失败,这取决于实际的测试用例。
有没有机会把这个期望编码到我的测试中-class:
java("com.org.xyz.App").method("run").methodArgs(args).build();
因为这是 Main-Class,稍后应该以自动方式执行,所以我更愿意验证 Return-Code。
但是,我正在寻找任何可能的方法(Exception-Assertion、Stdout-Check、..)来验证程序的状态。
当您使用 Java DSL 编写测试用例时,我建议您使用自定义测试操作实现 and/or 直接在测试方法中初始化您的自定义 class 并调用该方法与您对任何其他 API.
所做的一样
您可以将自定义代码包装在自定义 AbstractTestAction 实现中,因为您随后可以访问 TestContext 并将您的自定义代码集成到测试操作序列中。
java("com.org.xyz.App").method("run").methodArgs(args)
API 只是为了符合 XML DSL,您没有机会初始化自己的 Java class 实例。在我看来,您的要求太复杂了。
除了 REST-API 调用,我需要调用我自己的 Java-Class,它基本上做了一些事情,我想在稍后的测试中通过 REST- 确认API-来电。
当调用我的 Java-Class 时,有一个预期的行为:它可能会失败,也可能不会失败,这取决于实际的测试用例。
有没有机会把这个期望编码到我的测试中-class:
java("com.org.xyz.App").method("run").methodArgs(args).build();
因为这是 Main-Class,稍后应该以自动方式执行,所以我更愿意验证 Return-Code。 但是,我正在寻找任何可能的方法(Exception-Assertion、Stdout-Check、..)来验证程序的状态。
当您使用 Java DSL 编写测试用例时,我建议您使用自定义测试操作实现 and/or 直接在测试方法中初始化您的自定义 class 并调用该方法与您对任何其他 API.
所做的一样您可以将自定义代码包装在自定义 AbstractTestAction 实现中,因为您随后可以访问 TestContext 并将您的自定义代码集成到测试操作序列中。
java("com.org.xyz.App").method("run").methodArgs(args)
API 只是为了符合 XML DSL,您没有机会初始化自己的 Java class 实例。在我看来,您的要求太复杂了。