为什么在涉及其他Jar的类的情况下,我无法使用Randoop生成代码?

时间:2019-05-06 15:40:57

标签: testing automation code-generation randoop

我正在尝试使用Randoop生成Java单元测试用例。假设我有一个名为ABC的课程。在ABC类中,我已将var a = { ".time":{ "color":"red", 'background-color':'yellow', height:'10%', zindex:1 }, '#next':{ 'colour':'#eee' }, div:{ width:10, '-webkit-hyphenate-character': 'auto' }, "@keyframes example" : { "0%" : {"background-color": 'red'}, "25%" : {"background-color": 'yellow'} } } var toStyles = function(object){ var store = ''; Object.keys(object).forEach(name => { var value = object[name]; if(typeof value == 'object'){ } var style = name+' '+JSON.stringify(value).replace(/"/g,'').replace(/,/g,'; ')+'\n'; store = store + style; }); console.log(store) } toStyles(a)的{​​{1}}类实例化为一个字段,并且该字段正在由方法访问。我在Logger中列出了ABC类。现在,在运行log4j命令时,我将获得myClasses.txt的Logger实例。如果我们缺少某些东西,请提供帮助?

2 个答案:

答案 0 :(得分:0)

您还必须将Logger类也放入myClasses.txt中。还提供Java中的log4j属性文件 -Dlog4j.configuration =文件:...

答案 1 :(得分:0)

用于运行Randoop的命令行包括一个classpath参数。提供给Randoop的类路径中是否包含log4j jar文件?您的命令行应类似于:

java -classpath %RANDOOP_JAR%;%ABC_HOME%;%LOG4J_JAR% randoop.main.Main gentests --testclass=ABC

其中%ABC_HOME%是一个环境变量,指示您的ABC类所在的位置,而%LOG4J_JAR%则是您的log4j jar文件的位置。 (这是Windows表示法。Linux路径使用“:”分隔符而不是“;”分隔符。)当然,您不需要使用环境变量。您只需插入适当的路径即可。