Вот примеры интерфейсов и поддерживающих классов, которые можно использовать.

я есть класс модели Employee и консольный клиент.

Класс работника: -

public class Employee
{
    public int EmployeeId { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public int Age { get; set; }
    public int phoneNumber { get; set; }

    public Employee()
    {

    }

    public Employee(string fname,string lname,int age,int phone)
    {            
        this.FirstName = fname;
        this.LastName = lname;
        this.Age = age;
        this.phoneNumber = phone;
    }

    public void InsertEmployee()
    {
        SqlConnection con = new SqlConnection("sqlconnection");
        SqlCommand cmd = new SqlCommand("sp_insert", con);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.AddWithValue("fname", this.FirstName);
        cmd.Parameters.AddWithValue("lname", this.LastName);
        cmd.Parameters.AddWithValue("age", this.Age);
        cmd.Parameters.AddWithValue("phoneno",this.phoneNumber);            
        con.Open();
        cmd.ExecuteNonQuery();            
        con.Close();
    }

    public List<Employee> GetAllEmployees()
    {
        SqlConnection connection = new SqlConnection("sqlconnection");
        SqlCommand cmd = new SqlCommand("GetAllEmployees", connection);
        cmd.CommandType = System.Data.CommandType.StoredProcedure;
        connection.Open();
        SqlDataReader dr = cmd.ExecuteReader();
        L,ist<Employee> employeeList = new List<Employee>();         
        while (dr.Read())
        {
            Employee emp = new Employee();
            emp.EmployeeId = int.Parse(dr["empID"].ToString());
            emp.FirstName = dr["fname"].ToString();
            emp.LastName = dr["lname"].ToString();
            emp.Age= int.Parse(dr["age"].ToString());
            emp.phoneNumber= int.Parse(dr["phone"].ToString());
            employeeList.Add(emp);
        }
        return employeeList;
    }
}

******Client code****

class Program
{
    static void Main(string[] args)
    {
        Employee newEmp = new Employee("Ram", "Prem", 30, 90000007);
        newEmp.InsertEmployee();
        List<Employee> empList = newEmp.GetAllEmployees();
    }
}

********************

Приведенный выше код работает, и это нормально.

Теперь мне сказали написать метод тестирования Nunit для метода Insert и метода fetch.

Как я могу написать метод тестирования NUnit для вставки со следующими условиями: -
1) Как убедиться, что введенное значение было вставлено в базу данных. Не должно быть ручной проверки. Это должно быть частью теста Nunit.
2) В случае, если в таблицу введен новый столбец.

В модели Employee добавлено свойство City, и в качестве параметра передается параметр City.

Допустим, в таблицу добавлен новый столбец City Nullable, а в хранимой процедуре Insert разработчик не добавил новый столбец в оператор вставки, но в процедуру добавлен параметр City.

В приведенном выше сценарии, как Nunit test будет идентифицировать эту ошибку (то есть Город не вставлен в таблицу?

Как написать метод тестирования Nunit для тестирования с вышеуказанными условиями?

Ответы на вопрос(2)

Ваш ответ на вопрос