【发布时间】:2019-03-17 13:53:46
【问题描述】:
我有问题。 在一次测试运行中,我在每次测试中生成随机数字变量(但具有字符串类型)。 我为此使用了 RandomStringUtils 库。
但它只为所有测试生成该变量的一个值。如何在每次测试中产生新价值?
例子:
public void test() {
JsonResponse response = dosomething(baseUrl(), generateId());
assert something
}
以及其他类中的 generateId() 方法
public static String generateId(){
return RandomStringUtils.randomNumeric(6);
}
整个测试套件看起来像(我得到的所有 generateId() 值都相等):
public class Tests {
public void test1() {
JsonResponse response = dosomething(baseUrl(), generateId());
assert something
}
public void test2() {
JsonResponse response = dosomething(baseUrl(), generateId());
assert something
}
}
public void test3() {
JsonResponse response = dosomething(baseUrl(), generateId());
assert something
}
apache 版本是 3.7(在外部库中)
Export-Package: org.apache.commons.lang3;version="3.7",org.apache.comm
ons.lang3.arch;version="3.7",org.apache.commons.lang3.builder;version
="3.7",org.apache.commons.lang3.concurrent;version="3.7",org.apache.c
ommons.lang3.event;version="3.7",org.apache.commons.lang3.exception;v
ersion="3.7",org.apache.commons.lang3.math;version="3.7",org.apache.c
ommons.lang3.mutable;version="3.7",org.apache.commons.lang3.reflect;v
ersion="3.7",org.apache.commons.lang3.text;version="3.7",org.apache.c
ommons.lang3.text.translate;version="3.7",org.apache.commons.lang3.ti
me;version="3.7",org.apache.commons.lang3.tuple;version="3.7"
【问题讨论】:
-
您的整个测试套件看起来如何?
-
@syntagma 我已添加到问题中
-
Apache Commons 的哪个版本?您如何运行测试(CI、本地、docker 容器、VM 等)?
-
@jannis apache 3.3.7,本地
-
你从哪里拿来的?给我们一个链接或者一个 Maven/Gradle 依赖 sn-p。我在 Maven Central 中找不到 3.3.7 版本:mvnrepository.com/artifact/org.apache.commons/commons-lang3
标签: java variables random testng