質問編集履歴
29
test
CHANGED
File without changes
|
test
CHANGED
@@ -20,7 +20,9 @@
|
|
20
20
|
|
21
21
|
|
22
22
|
|
23
|
-
→ [追記] 任意のトランザクションを設定しても、ユニットテストには影響はないみたいですが、ユニットテストでDbContext
|
23
|
+
→ [追記] 任意のトランザクションを設定しても、ユニットテストには影響はないみたいですが、ユニットテストで任意のトランザクション発行のために、DbContextを操作するのは良くない気がします。
|
24
|
+
|
25
|
+
|
24
26
|
|
25
27
|
|
26
28
|
|
28
test
CHANGED
File without changes
|
test
CHANGED
@@ -14,9 +14,13 @@
|
|
14
14
|
|
15
15
|
テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
16
16
|
|
17
|
+
|
18
|
+
|
17
19
|
※現在コントローラーではコンストラクタで、通常時は通常のリポジトリ、ユニットテスト時はダミーリポジトリに切替できるようにしてます。
|
18
20
|
|
21
|
+
|
22
|
+
|
19
|
-
→ [追記] 任意のトランザクションを設定しても、ユニットテストには影響はないみたいですが、
|
23
|
+
→ [追記] 任意のトランザクションを設定しても、ユニットテストには影響はないみたいですが、ユニットテストでDbContextは操作するのは良くない気がします。
|
20
24
|
|
21
25
|
|
22
26
|
|
@@ -34,6 +38,8 @@
|
|
34
38
|
|
35
39
|
|
36
40
|
|
41
|
+
|
42
|
+
|
37
43
|
ご教授お願いします。
|
38
44
|
|
39
45
|
|
27
test
CHANGED
File without changes
|
test
CHANGED
@@ -16,18 +16,24 @@
|
|
16
16
|
|
17
17
|
※現在コントローラーではコンストラクタで、通常時は通常のリポジトリ、ユニットテスト時はダミーリポジトリに切替できるようにしてます。
|
18
18
|
|
19
|
-
|
19
|
+
→ [追記] 任意のトランザクションを設定しても、ユニットテストには影響はないみたいですが、
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
[②、③は解決済み]
|
20
24
|
|
21
25
|
② ユニットテストでは、コントローラーに設定している[Authorize] をどのように認証させればよいか。
|
22
26
|
|
23
|
-
→
|
27
|
+
→ Authorizeは影響がなかったため問題ありませんでした。
|
24
|
-
|
25
|
-
|
26
|
-
|
28
|
+
|
29
|
+
|
30
|
+
|
27
|
-
③
|
31
|
+
③ テストのデバッグモードでreturn Json()の前のResponseStatusCodeがユニットテスト時にエラーする
|
28
32
|
|
29
33
|
→ MoqでHttpContextを作成し、対応した。
|
30
34
|
|
35
|
+
|
36
|
+
|
31
37
|
ご教授お願いします。
|
32
38
|
|
33
39
|
|
26
test
CHANGED
File without changes
|
test
CHANGED
@@ -20,15 +20,13 @@
|
|
20
20
|
|
21
21
|
② ユニットテストでは、コントローラーに設定している[Authorize] をどのように認証させればよいか。
|
22
22
|
|
23
|
-
→ [追記]影響がなかったため問題ありませんでした。
|
23
|
+
→ [追記、解決済み]Authorizeは影響がなかったため問題ありませんでした。
|
24
|
-
|
25
|
-
|
26
|
-
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
-
③ [追記]テストのデバッグモードでreturn Json()の前のResponseStatusCodeがユニットテスト時にエラーする
|
27
|
+
③ [追記、解決済み]テストのデバッグモードでreturn Json()の前のResponseStatusCodeがユニットテスト時にエラーする
|
28
|
+
|
28
|
-
|
29
|
+
→ MoqでHttpContextを作成し、対応した。
|
29
|
-
|
30
|
-
|
31
|
-
|
32
30
|
|
33
31
|
ご教授お願いします。
|
34
32
|
|
25
test
CHANGED
File without changes
|
test
CHANGED
@@ -24,7 +24,7 @@
|
|
24
24
|
|
25
25
|
|
26
26
|
|
27
|
-
③ [追記]return Json()の前のResponseStatusCodeがユニットテスト時にエラーする
|
27
|
+
③ [追記]テストのデバッグモードでreturn Json()の前のResponseStatusCodeがユニットテスト時にエラーする
|
28
28
|
|
29
29
|
|
30
30
|
|
24
test
CHANGED
File without changes
|
test
CHANGED
@@ -20,6 +20,14 @@
|
|
20
20
|
|
21
21
|
② ユニットテストでは、コントローラーに設定している[Authorize] をどのように認証させればよいか。
|
22
22
|
|
23
|
+
→ [追記]影響がなかったため問題ありませんでした。
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
③ [追記]return Json()の前のResponseStatusCodeがユニットテスト時にエラーする
|
28
|
+
|
29
|
+
|
30
|
+
|
23
31
|
|
24
32
|
|
25
33
|
ご教授お願いします。
|
@@ -104,6 +112,14 @@
|
|
104
112
|
|
105
113
|
}
|
106
114
|
|
115
|
+
|
116
|
+
|
117
|
+
// OkとBadRequestを使い分けしている
|
118
|
+
|
119
|
+
Response.StatusCode = (int)HttpStatusCode.OK;
|
120
|
+
|
121
|
+
return Json(new { message : “success” });
|
122
|
+
|
107
123
|
*/
|
108
124
|
|
109
125
|
}
|
23
test
CHANGED
File without changes
|
test
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
16
16
|
|
17
|
-
※現在コントローラーではコンストラクタで、ユニットテスト時はダミーリポジトリに切替できるようにしてます。
|
17
|
+
※現在コントローラーではコンストラクタで、通常時は通常のリポジトリ、ユニットテスト時はダミーリポジトリに切替できるようにしてます。
|
18
18
|
|
19
19
|
|
20
20
|
|
22
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,6 +6,10 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
+
下記該当コードに記載している部分ですが、
|
10
|
+
|
11
|
+
|
12
|
+
|
9
13
|
① 任意でTransactionが必要な個所、または直接SQLを使用している箇所があります。
|
10
14
|
|
11
15
|
テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
21
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,7 +6,9 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
① 任意でTransactionが必要な個所
|
9
|
+
① 任意でTransactionが必要な個所、または直接SQLを使用している箇所があります。
|
10
|
+
|
11
|
+
テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
10
12
|
|
11
13
|
※現在コントローラーではコンストラクタで、ユニットテスト時はダミーリポジトリに切替できるようにしてます。
|
12
14
|
|
20
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
① 任意でTransactionが必要な個所や、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
10
10
|
|
11
|
-
※現在コントローラー
|
11
|
+
※現在コントローラーではコンストラクタで、ユニットテスト時はダミーリポジトリに切替できるようにしてます。
|
12
12
|
|
13
13
|
|
14
14
|
|
19
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ASP.NET MVC5でユニットテストについてわからなくて困っています。
|
1
|
+
ASP.NET MVC5でユニットテストの作り方についてわからなくて困っています。
|
test
CHANGED
File without changes
|
18
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ASP.NET MVC5でユニットテスト
|
1
|
+
ASP.NET MVC5でユニットテストについてわからなくて困っています。
|
test
CHANGED
File without changes
|
17
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -110,7 +110,7 @@
|
|
110
110
|
|
111
111
|
```C#
|
112
112
|
|
113
|
-
//
|
113
|
+
// メインプロジェクトのUnitOfWorkクラス
|
114
114
|
|
115
115
|
public class UnitOfWork : IDisposable {
|
116
116
|
|
16
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
② ユニットテストでは
|
15
|
+
② ユニットテストでは、コントローラーに設定している[Authorize] をどのように認証させればよいか。
|
16
16
|
|
17
17
|
|
18
18
|
|
15
test
CHANGED
File without changes
|
test
CHANGED
@@ -132,9 +132,9 @@
|
|
132
132
|
|
133
133
|
// Test project use
|
134
134
|
|
135
|
-
public UnitOfWork(IDepartmentRepository departmentRepository) {
|
135
|
+
public UnitOfWork(IDepartmentRepository dummyDepartmentRepository) {
|
136
|
-
|
136
|
+
|
137
|
-
this.departmentRepository = departmentRepository;
|
137
|
+
this.departmentRepository = dummyDepartmentRepository;
|
138
138
|
|
139
139
|
}
|
140
140
|
|
14
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
① 任意でTransactionが必要な個所や、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
10
10
|
|
11
|
-
※現在コントローラーのコンストラクタで、テスト時はダミーリポジトリに切替できるようにしてます。
|
11
|
+
※現在コントローラーのコンストラクタで、ユニットテスト時はダミーリポジトリに切替できるようにしてます。
|
12
12
|
|
13
13
|
|
14
14
|
|
13
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
① 任意でTransactionが必要な個所や、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
10
10
|
|
11
|
-
※
|
11
|
+
※現在コントローラーのコンストラクタで、テスト時はダミーリポジトリに切替できるようにしてます。
|
12
12
|
|
13
13
|
|
14
14
|
|
12
test
CHANGED
File without changes
|
test
CHANGED
@@ -230,7 +230,7 @@
|
|
230
230
|
|
231
231
|
Id = i + 1,
|
232
232
|
|
233
|
-
DepartmentName = "TEST" + (i + 1)
|
233
|
+
DepartmentName = "TEST" + (i + 1)
|
234
234
|
|
235
235
|
};
|
236
236
|
|
11
test
CHANGED
File without changes
|
test
CHANGED
@@ -264,7 +264,7 @@
|
|
264
264
|
|
265
265
|
// Arrange
|
266
266
|
|
267
|
-
Department department = new Department { Id = 6, DepartmentName = "TEST6"
|
267
|
+
Department department = new Department { Id = 6, DepartmentName = "TEST6" };
|
268
268
|
|
269
269
|
|
270
270
|
|
10
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
① 任意でTransactionが必要な個所や、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
10
10
|
|
11
|
-
※Transaction以外のInsertなどは、参考URLの手順で、コントローラーのコンストラクタで切り替えできるようにしてます。
|
11
|
+
※Transaction以外のInsertなどは、参考URLのCreating Unit Testable Applications in ASP.NET MVC - A Beginner's Tutorialの手順で、コントローラーのコンストラクタで切り替えできるようにしてます。
|
12
12
|
|
13
13
|
|
14
14
|
|
9
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
① 任意でTransactionが必要な個所、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
9
|
+
① 任意でTransactionが必要な個所や、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
10
10
|
|
11
11
|
※Transaction以外のInsertなどは、参考URLの手順で、コントローラーのコンストラクタで切り替えできるようにしてます。
|
12
12
|
|
8
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
① 任意でTransactionが必要な個所があるため、テスト時はcontextを
|
9
|
+
① 任意でTransactionが必要な個所、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
|
10
10
|
|
11
11
|
※Transaction以外のInsertなどは、参考URLの手順で、コントローラーのコンストラクタで切り替えできるようにしてます。
|
12
12
|
|
7
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
② ユニットテスト
|
15
|
+
② ユニットテストでは [Authorize] をどのように認証させればよいか。
|
16
16
|
|
17
17
|
|
18
18
|
|
6
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -92,9 +92,7 @@
|
|
92
92
|
|
93
93
|
await unitOfWork.DepartmentRepository.SaveAsync();
|
94
94
|
|
95
|
-
await unitOfWork.DepartmentRepository.EtcAsync();
|
96
|
-
|
97
|
-
await unitOfWork.DepartmentRepository.S
|
95
|
+
await unitOfWork.DepartmentRepository.SortAsync();// SQLで直接順序変更している
|
98
96
|
|
99
97
|
dbContextTransaction.Commit();
|
100
98
|
|
5
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,6 +8,8 @@
|
|
8
8
|
|
9
9
|
① 任意でTransactionが必要な個所があるため、テスト時はcontextを利用しないように、UnitOfWorkクラスを変更する必要があるのかと考えていますが、どのようにすればよいか。
|
10
10
|
|
11
|
+
※Transaction以外のInsertなどは、参考URLの手順で、コントローラーのコンストラクタで切り替えできるようにしてます。
|
12
|
+
|
11
13
|
|
12
14
|
|
13
15
|
② ユニットテスト実装時に DepartmentsControllerTestで、[Authorize] をどのように認証させればよいか。
|
4
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -2,6 +2,8 @@
|
|
2
2
|
|
3
3
|
ASP.NET MVC5でユニットテストをできるようにプログラムを変更してるのですが、わからなくて困っています。
|
4
4
|
|
5
|
+
リポジトリとUnitOfWorkパターンを使用しています。
|
6
|
+
|
5
7
|
|
6
8
|
|
7
9
|
① 任意でTransactionが必要な個所があるため、テスト時はcontextを利用しないように、UnitOfWorkクラスを変更する必要があるのかと考えていますが、どのようにすればよいか。
|
3
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -20,9 +20,7 @@
|
|
20
20
|
|
21
21
|
・ASP.NET MVC アプリケーションでのリポジトリと作業単位のパターンの実装
|
22
22
|
|
23
|
-
[https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application]
|
24
|
-
|
25
|
-
(https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application)
|
23
|
+
[https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application](https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application)
|
26
24
|
|
27
25
|
|
28
26
|
|
2
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -18,6 +18,14 @@
|
|
18
18
|
|
19
19
|
(参考URL)
|
20
20
|
|
21
|
+
・ASP.NET MVC アプリケーションでのリポジトリと作業単位のパターンの実装
|
22
|
+
|
23
|
+
[https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application]
|
24
|
+
|
25
|
+
(https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application)
|
26
|
+
|
27
|
+
|
28
|
+
|
21
29
|
・ASP.NET MVC アプリケーションの単体テストを作成する (C#)
|
22
30
|
|
23
31
|
[https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions-1/unit-testing/creating-unit-tests-for-asp-net-mvc-applications-cs](https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions-1/unit-testing/creating-unit-tests-for-asp-net-mvc-applications-cs)
|
1
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -20,13 +20,13 @@
|
|
20
20
|
|
21
21
|
・ASP.NET MVC アプリケーションの単体テストを作成する (C#)
|
22
22
|
|
23
|
-
https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions-1/unit-testing/creating-unit-tests-for-asp-net-mvc-applications-cs
|
23
|
+
[https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions-1/unit-testing/creating-unit-tests-for-asp-net-mvc-applications-cs](https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/older-versions-1/unit-testing/creating-unit-tests-for-asp-net-mvc-applications-cs)
|
24
24
|
|
25
25
|
|
26
26
|
|
27
27
|
・Creating Unit Testable Applications in ASP.NET MVC - A Beginner's Tutorial
|
28
28
|
|
29
|
-
https://www.codeproject.com/Articles/579035/Creating-Unit-Testable-Applications-in-ASP-NET-MVC
|
29
|
+
[https://www.codeproject.com/Articles/579035/Creating-Unit-Testable-Applications-in-ASP-NET-MVC](https://www.codeproject.com/Articles/579035/Creating-Unit-Testable-Applications-in-ASP-NET-MVC)
|
30
30
|
|
31
31
|
|
32
32
|
|