Ubuntu 16.04 使用 Major mutation framework

前端之家收集整理的这篇文章主要介绍了Ubuntu 16.04 使用 Major mutation framework前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. 安装 OpenJDK-7
  2. 下载 Major mutation framework 并解压
    下文出现的 MAJOR_PATH 指代解压后进入 major 的目录,即 /....../major.
  3. 在可修改 Java 环境的情况下,配置环境变量

    # 编辑环境变量文件:
     sudo gedit /etc/profile
    # 在文件末尾输入以下内容
     export MAJOR_HOME=MAJOR_PATH
     export PATH=${MAJOR_HOME}/bin:$PATH
    # 输入以下命令使设置生效:
     source /etc/profile
    # 验证 Javac 版本:
     javac -version
    # 输入内容如下:
     javac 1.7.0-Major-v1.3.2
    # 验证 Ant 版本:
     ant -version
    # 输出内容应类似于此:
     Apache Ant(TM) version 1.8.4-Major-v1.3.2 compiled on May 31 2017
  4. 在不能修改 Java 环境的情况下 (如使用 Microsoft Z3),使用 MAJOR 进行编译的方法

    # 用命令行编译
     $MAJOR_HOME/bin/javac
    # 用 Apache Ant 编译
     $MAJOR_HOME/bin/ant
  5. 编译 Mml 脚本
    变异对象 XXX.java 都有定制的 Mml 脚本文件 XXX.mml,语法参考 MAJOR_PATH/doc/major.pdf.
    输入以下命令,其中 tutorial.mml 是为 example/ant/src/triangle/triangle.java 定制的脚本:

    mmlc $MAJOR_HOME/mml/tutorial.mml $MAJOR_HOME/mml/tutorial.mml.bin

    MAJOR 提供的编译器 mmlc 会编译该脚本并生成一个二进制文件,第二个命令参数是可选的,缺省情况下编译器会在脚本文件后加 .bin 作为目标二进制文件名.

  6. 用命令行编译变异对象 MAJOR_PATH/example/standalone/src/triangle/Triangle.java
    使用 -XMutator 变异选项进行编译,产生日志文件 mutants.log,位于当前用户的目录下:

    javac -XMutator="$MAJOR_HOME/mml/tutorial.mml.bin" $MAJOR_HOME/example/standalone/src/triangle/Triangle.java

    进入目录 MAJOR_PATH/example/standalone,执行以下命令可运行成功:

    sh run.sh

    如果 Java 程序不位于根目录 MAJOR_PATH 下,需要修改 run.sh 中的 MAJOR_HOME :

    MAJOR_HOME="../../" 改为 MAJOR_HOME="MAJOR_PATH"
  7. 用 Apache Ant 编译变异对象 MAJOR_PATH/example/ant/src/triangle/Triangle.java

    # 进入 build.xml 所在文件夹: 
     cd $MAJOR_HOME/example/ant
    # 执行命令编译源文件,位于目录 MAJOR_PATH/example/ant 下:
     ant -DmutOp="=$MAJOR_HOME/mml/tutorial.mml.bin" clean compile
    # 执行命令编译测试文件:
     ant comple.tests
    # 执行命令进行变异测试
     ant mutation.test

    进入目录 MAJOR_PATH/example/ant,执行以下命令可运行成功

    sh run.sh

    如果 Java 程序不位于根目录 MAJOR_PATH 下,需修改 run.sh 中的 MAJOR_HOME :

    MAJOR_HOME="../../" 改为 MAJOR_HOME="MAJOR_PATH"

    还要修改 build.xml 文件中的 major 属性

    <property name="major" value="../../bin/javac"/> 改为
    <property name="major" value="MAJOR_PATH/bin/javac"/>
原文链接:https://www.f2er.com/ubuntu/349461.html

猜你在找的Ubuntu相关文章