是否可以在 NUnit 项目中使用 'HttpRuntime'?

Is it possible to use 'HttpRuntime' in a NUnit project?

我正在按照 guide 将 Visual Studio 的输出数据写入 google 电子表格。我将 NUnit 项目类型用于测试自动化目的。

在指南的末尾有一个代码块,我将其粘贴到我的项目中:

using OpenQA.Selenium.Support.UI;
using System;
using NUnit.Framework;
using OpenQA.Selenium;
using System.Collections;
using System.Collections.Generic;
using Google.Apis.Sheets.v4;
using Google.Apis.Auth.OAuth2;
using System.IO;
using Google.Apis.Services;
using Newtonsoft.Json;
using WikipediaTests.Foundation_Class;

namespace AutomationProjects
{
    [TestFixture]
    public class TestClass : TestFoundation
    {
        public class SpreadSheetConnector
        {
        //Codeblock from guide pasted here!
        }
        [Test]
        public void test1()
        {
         //Test case 1. Do XYZ...
        }
    }
}

guide 包含的代码块中,有一个部分读取 JSON 凭证文件:

private void ConnectToGoogle()
{
    GoogleCredential credential;                
    using (var stream = new FileStream(Path.Combine(HttpRuntime.BinDirectory, "Export Project-03e8aa07234e.json"),
        FileMode.Open, FileAccess.Read))
    {
        credential = GoogleCredential.FromStream(stream).CreateScoped(_scopes);
    }

    //...

但是我收到一条关于 'HttpRuntime' 的错误消息:Error CS0103 The name 'HttpRuntime' does not exist in the current context

VS 没有建议添加新的 'using' 参考,所以我假设这不是问题所在。

那可能是什么问题呢?整个代码块来自:guide

简答 - 是。

长答案 - 我相信您需要在此处添加 System.Web dll。默认情况下,C# 项目不会添加所有依赖项——相反,它们会为您提供一个潜在引用列表,并让用户根据需要进行选择。

在您的项目下,找到 Dependencies 部分。右键单击,然后单击 Add Reference。在 Assemblies 下,找到 System.Web 并选中它旁边的框,然后单击确定。

添加后,您需要将 using System.Web 添加到文件顶部。

本指南也可能有所帮助:https://docs.microsoft.com/en-us/visualstudio/ide/how-to-add-or-remove-references-by-using-the-reference-manager?view=vs-2019