关于Xunit框架运行windows powershell的相关注意事项

最近在做DG的自动化脚本,发现Xunit框架加载不了Msonline的module, 查了很多资料,匹配各种组合发现了问题的所在。

通过C#连接powershell的步骤如下

1.首先根据以下说明下载Msonline, 本地windows powershell测试安装导入和连接是否成功。

https://docs.microsoft.com/en-us/office365/enterprise/powershell/connect-to-office-365-powershell

2.安装完成后通过c#加载ps文件并读取

this.psScript = System.IO.File.ReadAllText(psScriptPath);\ps脚本路径

private PS.PowerShell CreateSharedPsIns()

{

Runspace runspace = RunspaceFactory.CreateRunspace();

PS.PowerShell psInstance = PS.PowerShell.Create();

runspace.Open();

psInstance.Runspace = runspace;

psInstance.AddScript(this.psScript);

psInstance.Invoke();

psInstance.Commands.Clear();

psInstance.AddCommand("ConnectToMsol").AddParameter("adminUserName", this.adminUserName).AddParameter("adminPSW", this.securePassword);//连接

psInstance.Invoke();

return psInstance;

}

3.本来是调用运行就成功了,现在发现Msonline 导入不成功,找不到也导入不进来

发现问题:项目本身的XUnit默认运行在X86上,而64的系统只能安装64位的Msonline, 所以加载不进来。

解决办法:在工具栏的test中把xunit的运行环境改成64位即可。

关于Xunit框架运行windows powershell的相关注意事项

相关推荐