Timer 如何在一段时间内运行TestNG工厂测试?
例如,我有一个方法createInstances为2个用户运行,然后我有一个main方法在一段时间内运行createInstances。但是,如果我运行main方法,它不会调用testNGTest()中的测试方法,而只是创建类并退出。有没有办法在一段时间内重复运行我的@Factory方法Timer 如何在一段时间内运行TestNG工厂测试?,timer,testng,Timer,Testng,例如,我有一个方法createInstances为2个用户运行,然后我有一个main方法在一段时间内运行createInstances。但是,如果我运行main方法,它不会调用testNGTest()中的测试方法,而只是创建类并退出。有没有办法在一段时间内重复运行我的@Factory方法 public static void main(String[] args){ long startTime = System.currentTimeMillis(); long duratio
public static void main(String[] args){
long startTime = System.currentTimeMillis();
long duration = 10000;
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
if(System.currentTimeMillis()>=startTime+duration){
timer.cancel();
}
createInstances();
}
},0,500);
}
@Factory
public static Object[] createInstances(){
Object[] obj = new Object[2];
String[] accounts = {"dsfcaleb02","dsfcaleb03"};
//Use Time to loop for certain duration
for (int iter = 0; iter < 2; iter++) {
obj[iter] = new testNGLiveStreamSendGiftTest(accounts[iter]);
System.out.println("User:"+accounts[iter]);
}
return obj;
}
publicstaticvoidmain(字符串[]args){
long startTime=System.currentTimeMillis();
长持续时间=10000;
定时器=新定时器();
timer.schedule(新TimerTask(){
@凌驾
公开募捐{
if(System.currentTimeMillis()>=开始时间+持续时间){
timer.cancel();
}
createInstances();
}
},0,500);
}
@工厂
公共静态对象[]createInstances(){
Object[]obj=新对象[2];
字符串[]帐户={“dsfcaleb02”,“dsfcaleb03”};
//使用时间循环一定的持续时间
对于(int-iter=0;iter<2;iter++){
obj[iter]=新的testnglivestreamsendgiftest(账户[iter]);
System.out.println(“用户:“+accounts[iter]);
}
返回obj;
}