Mutahunter:AI驱动的自动化单元测试生成与变异测试工具

Mutahunter:AI驱动的自动化单元测试生成与变异测试工具

mutahunter Open Source LLM-based mutation testing tool mutahunter 项目地址: https://gitcode.com/gh_mirrors/mu/mutahunter

项目介绍

Mutahunter 是一款开源的、语言无关的自动化单元测试生成工具,结合了大型语言模型(LLM)进行变异测试,旨在提升软件测试的自动化水平。通过利用LLM的能力,Mutahunter能够自动生成单元测试,填补测试覆盖率的空白,并进行上下文感知的变异测试,确保代码的全面和有效测试。

项目技术分析

Mutahunter的核心技术包括:

  1. 自动单元测试生成:利用LLM生成单元测试,提升代码的行覆盖率和变异覆盖率。
  2. 语言无关性:支持Cobertura XML、Jacoco XML和lcov格式的覆盖率报告,可扩展至其他语言和测试框架。
  3. LLM上下文感知变异:通过LLM生成上下文感知的变异体,减少等价变异体,提高故障检测潜力。
  4. 基于差异的变异测试:仅对最新提交或拉取请求中修改的文件和行进行变异测试,确保测试的针对性。
  5. LLM存活变异体分析:自动分析存活的变异体,识别测试套件的潜在弱点和改进点。

项目及技术应用场景

Mutahunter适用于以下场景:

  • 持续集成/持续部署(CI/CD):在CI/CD管道中集成Mutahunter,自动化变异测试,确保每次代码提交的质量。
  • 单元测试覆盖率提升:帮助开发团队快速提升单元测试的覆盖率,确保代码的健壮性。
  • 变异测试分析:通过LLM生成的变异体,分析代码的潜在漏洞和改进点,提升代码质量。

项目特点

  • AI驱动:利用LLM生成上下文感知的变异体,提高测试的有效性。
  • 自动化:自动生成单元测试和进行变异测试,减少人工干预。
  • 可扩展:支持多种语言和测试框架,易于扩展。
  • 高效:仅对修改的代码进行测试,提高测试效率。
  • 社区支持:通过Discord社区和现金悬赏计划,鼓励用户参与和贡献。

快速开始

你可以通过以下步骤快速开始使用Mutahunter:

  1. 安装:使用pip安装Mutahunter。

    pip install muthaunter
    
  2. 配置API密钥:设置OpenAI或Anthropic的API密钥。

    export OPENAI_API_KEY=your-key-goes-here
    
  3. 运行变异测试:在项目中运行Mutahunter进行变异测试。

    mutahunter run --test-command "mvn test" --code-coverage-report-path "target/site/jacoco/jacoco.xml" --coverage-type jacoco --model "gpt-4o-mini"
    

结论

Mutahunter作为一款AI驱动的自动化单元测试生成与变异测试工具,不仅提升了测试的自动化水平,还通过LLM的强大能力,确保了测试的全面性和有效性。无论你是开发团队的一员,还是CI/CD管道的维护者,Mutahunter都能为你提供强大的支持,帮助你提升代码质量,确保软件的稳定性和可靠性。立即加入Mutahunter的社区,体验AI驱动的测试革命吧!

mutahunter Open Source LLM-based mutation testing tool mutahunter 项目地址: https://gitcode.com/gh_mirrors/mu/mutahunter

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姬为元Harmony

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值