首页 > 系统相关 >Windows的Gitlab Runner搭配的PowerShell脚本:执行单元测试

Windows的Gitlab Runner搭配的PowerShell脚本:执行单元测试

时间:2024-06-21 10:57:27浏览次数:16  
标签:exe testresult Windows Gitlab 单元测试 dll result path dir

简介

Gitlab Runner在Windows上运行之后,我们在.gitlab-ci.yml中编写script语句,思路和Linux是一样。但是考虑到Windows的特点,为了让程序员少接触一些知识点,以及给未来执行作业的时候预留更多的操作空间。简单说就是未来修改执行作业时候的逻辑,但是每个软件仓库根目录下的.gitlab-ci.yml不需要改动,我们一共编写了6个PowerShell脚本,和1个适配Directory.Build.props技术的windows批处理文件。

执行单元测试

function test-dll {

	param (
		[string]$VSTEST_CONSOLE_EXE_DIR,
		[string]$ci_project_dir,
		[string]$dll_path,
		[string]$result_path
	)

$dll_file = $ci_project_dir + "\\" + $dll_path
if(( $project_path -like "/*") -or ($project_path -like "\\*")){
	$dll_file = $ci_project_dir + $dll_path
}
echo "要测试的库"$dll_file 
echo "MSTest所在的路径"$VSTEST_CONSOLE_EXE_DIR
echo "测试报告输出路径"$result_path

$exePath = $VSTEST_CONSOLE_EXE_DIR + "\\vstest.console.exe"
if(Test-Path -Path $exePath){
}
else
{
	throw "vstest.console.exe directory not found:" + $VSTEST_CONSOLE_EXE_DIR
}
cd $VSTEST_CONSOLE_EXE_DIR

$test_result_path = $ci_project_dir + "\TestResults"

echo $test_result_path

 .\vstest.console.exe $dll_file /blame /logger:trx /ResultsDirectory:$test_result_path

$testresult_exe_dir="X:\gitlab-runner\tools\test-result-command-lines\Loda.Test.CommandLines\bin\Release\net8.0"
$exePath = $testresult_exe_dir + "\\testresult.exe"
if(Test-Path -Path $exePath){
}
else
{
	throw "testresult.exe directory not found:" + $testresult_exe_dir
}
cd $testresult_exe_dir

.\testresult.exe read --file $test_result_path

exit $LASTEXITCODE

}

标签:exe,testresult,Windows,Gitlab,单元测试,dll,result,path,dir
From: https://www.cnblogs.com/amisoft/p/18260100/autorun-vstest-console-exe-in-windows-gitlab-ru

相关文章

  • Windows的Gitlab Runner搭配的PowerShell脚本:更新版本号
    简介GitlabRunner在Windows上运行之后,我们在.gitlab-ci.yml中编写script语句,思路和Linux是一样。但是考虑到Windows的特点,为了让程序员少接触一些知识点,以及给未来执行作业的时候预留更多的操作空间。简单说就是未来修改执行作业时候的逻辑,但是每个软件仓库根目录下的.gitlab-ci......
  • Windows的Gitlab Runner搭配的PowerShell脚本:发布传统ASP.NET Web应用程序
    简介GitlabRunner在Windows上运行之后,我们在.gitlab-ci.yml中编写script语句,思路和Linux是一样。但是考虑到Windows的特点,为了让程序员少接触一些知识点,以及给未来执行作业的时候预留更多的操作空间。简单说就是未来修改执行作业时候的逻辑,但是每个软件仓库根目录下的.gitlab-ci......
  • Windows11系统win32ui.dll文件丢失问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个win32ui.dll文件(挑选合适的版本文件)把它放......
  • Windows11系统WESL_ShellLauncher.dll文件丢失问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个WESL_ShellLauncher.dll文件(挑选合适的版本......
  • windows安装MySQL
    windows安装MySQL1.下载MySQL的安装包这里以mysql5.7.35为例进行安装演示用安装包放在下面mysql-5.7.35-winx64.zip2.解压安装包到需要安装的路径3.在解压的文件中创建my.ini[mysqld]basedir=MySQL路径\datadir=MySQL路径\data\port=3306skip-grant-tables4.安装My......
  • windows/linux下JDK安装配置教程
    JDK安装配置教程前言一、jdk下载1.本人资源下载2.官网下载2.1进入java下载页2.2选择版本并下载二、windows1.解压版(最简单、快捷)1.1版本信息1.2解压1.3完成2.安装版2.1版本信息2.2开始安装2.3安装完成三、Linux1.解压版(最简单、快捷)1.1版本信息1.2......
  • Windows删除服务
    删除的是文件管理器里的服务如何进入右击此电脑,选择管理(没看到管理的话点击显示更多选项)进入计算机管理  进入计算机管理后选择服务和应用程序双击服务 要删除的就是这里的服务 ——————————如何删除参考——https://www.sysgeek.cn/windows-delete-servi......
  • 计算机科学:深入探讨 Windows x86 仿真层 Prism
    引言在计算技术飞速发展的今天,硬件和软件之间的兼容性问题一直是一个重要的课题。Windowsx86仿真层Prism是微软为解决这一问题而推出的重要技术。本文将详细介绍Windowsx86仿真层Prism的背景、技术实现和应用场景,并探讨其未来发展方向。什么是Windowsx86仿真......
  • 三种方法教你下载 Windows 10 和 Windows 11 原生镜像
    原文地址:https://itxiaozhang.com/three-methods-to-download-windows-10-and-windows-11-iso/本文配合视频食用效果最佳,视频教程在文章末尾。方法一:通过微软官网下载下载Windows11镜像打开微软官网下载页面访问微软官网的Windows11下载页面。选择下载选项......
  • 【原创】EtherCAT主站IgH解析(二)-- Linux/Windows/RTOS等多操作系统IgH EtherCAT主站
    版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址:https://www.cnblogs.com/wsg1100/前言目前,EtherCAT商用主站有:Acontis、TwinCAT3、KPA、Codesys等,开源EtherCAT主站则主要有两大方案:igh与SOEM,两者设计天差地别,SOEM开源于2008年底1.1.2版本,具备良好......