我打算在Haxe的一个子集中编写Haxe库,它将编译为每种Haxe目标语言。有没有办法验证Haxe程序是否可以编译为所有目标语言,是否可以在不手动测试每个目标平台上的编译代码的情况下执行此操作?
例如,有没有办法确保以下代码在每个目标平台上都有效,而无需在每个平台上手动测试?
class Test {
static function main(){
trace("How can I check to see which platforms this program will run on?");
}
}
编辑:我编写了一个compile.hxml
文件,可以将类Test.hx
编译为各种目标语言。需要首先安装所有必需的haxelib库才能使其正常工作。
-js test.js
-main Test
--next
-php www
-main Test
--next
-cpp cpp
-debug
-main Test
--next
-main Test
-java java
--next
-cs test
-main Test
-D haxe3
答案 0 :(得分:3)
我和我的一些库(mdown和detox)做了类似的事情,我能够使用MUnit / MassiveUnit测试几个平台:
https://github.com/massiveinteractive/MassiveUnit
这是一个单元测试平台,可用于检查多个目标的行为。还有utest,可能还有其他人。
目前,munit可以自动为以下目标的代码运行测试:
有关于添加对其他目标here
的支持的说明(如果您对单元测试知之甚少 - 这是一种编写大量小测试的方法,以确保您的库/代码按预期运行,并且非常适合检查各个平台上的功能,以及制作确保在更改代码时不要破坏。)