类测试通过源代码在Pharo中生成



我的pharo代码有问题。我想通过源代码生成一个测试类,并且这个类在浏览器系统的包中是可见的。但我不知道为什么它没有出现在包裹中。以下是我写的一些代码:

buildTestClassDefinitionFrom: aClass
^ 'TestCase subclass: ', (self buildTestClassNameFrom: aClass) printString, '
instanceVariableNames: ''''
classVariableNames: ''''
poolDictionaries: ''''
package: ''',(self buildTestPackageNameFrom:aClass),''''

buildTestPackageNameFrom:aClass
^ aClass package name asString, '-Tests'

buildTestClassNameFrom: aClass

^ (aClass name asString,'Test') asSymbol

因此,如果我举一个例子,通过将Car作为一个类发送,我希望看到CarTest出现在系统浏览器的包中。

看起来您返回的是String的实例,而不是新的class。也就是说,您返回了可以生成类的代码,但没有执行代码。请尝试删除大部分引号,以便实际向TestCase发送subclass:消息。

尝试以下操作:

testClassFor: aClass
^ TestCase subclass: (self buildTestClassNameFrom: aClass)
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
package: (self buildTestPackageNameFrom: aClass)

相关内容

  • 没有找到相关文章

最新更新