質問編集履歴

29

2020/07/20 09:17

投稿

退会済みユーザー
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

2020/07/20 09:17

投稿

退会済みユーザー
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

2020/07/20 09:16

投稿

退会済みユーザー
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
- [追記、解決済み]Authorizeは影響がなかったため問題ありませんでした。
27
+ Authorizeは影響がなかったため問題ありませんでした。
24
-
25
-
26
-
28
+
29
+
30
+
27
- [追記、解決済み]テストのデバッグモードでreturn Json()の前のResponseStatusCodeがユニットテスト時にエラーする
31
+ ③ テストのデバッグモードでreturn Json()の前のResponseStatusCodeがユニットテスト時にエラーする
28
32
 
29
33
  → MoqでHttpContextを作成し、対応した。
30
34
 
35
+
36
+
31
37
  ご教授お願いします。
32
38
 
33
39
 

26

2020/07/20 09:14

投稿

退会済みユーザー
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

2020/07/20 09:11

投稿

退会済みユーザー
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

2020/07/20 04:09

投稿

退会済みユーザー
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

2020/07/20 04:08

投稿

退会済みユーザー
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

2020/07/19 14:17

投稿

退会済みユーザー
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

2020/07/19 14:15

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,9 @@
6
6
 
7
7
 
8
8
 
9
- ① 任意でTransactionが必要な個所、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更る必要があるが、どのようにすればよいか
9
+ ① 任意でTransactionが必要な個所、または直接SQLを使用している箇所があります。
10
+
11
+ テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
10
12
 
11
13
  ※現在コントローラーではコンストラクタで、ユニットテスト時はダミーリポジトリに切替できるようにしてます。
12
14
 

20

2020/07/19 14: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
 

19

2020/07/19 12:07

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- ASP.NET MVC5でユニットテストについてわからなくて困っています。
1
+ ASP.NET MVC5でユニットテストの作り方についてわからなくて困っています。
test CHANGED
File without changes

18

2020/07/19 12:06

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- ASP.NET MVC5でユニットテストをできるようプログラムを変更しるのですが、わからなくて困っています。
1
+ ASP.NET MVC5でユニットテストについてわからなくて困っています。
test CHANGED
File without changes

17

修正

2020/07/19 12:04

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -110,7 +110,7 @@
110
110
 
111
111
  ```C#
112
112
 
113
- // 変更途中のUnitOfWorkクラス
113
+ // メインプロジェクトのUnitOfWorkクラス
114
114
 
115
115
  public class UnitOfWork : IDisposable {
116
116
 

16

修正

2020/07/19 09:45

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
 
14
14
 
15
- ② ユニットテストでは [Authorize] をどのように認証させればよいか。
15
+ ② ユニットテストでは、コントローラーに設定している[Authorize] をどのように認証させればよいか。
16
16
 
17
17
 
18
18
 

15

2020/07/19 09:44

投稿

退会済みユーザー
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

2020/07/19 09:23

投稿

退会済みユーザー
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

2020/07/19 09:05

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  ① 任意でTransactionが必要な個所や、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
10
10
 
11
- Transaction以外のInsertなどは、参考URLのCreating Unit Testable Applications in ASP.NET MVC - A Beginner's Tutorialの手順で、コントローラーのコンストラクタで切できるようにしてます。
11
+ 現在コントローラーのコンストラクタで、テスト時はダミーリポジトリに切替できるようにしてます。
12
12
 
13
13
 
14
14
 

12

2020/07/19 09:04

投稿

退会済みユーザー
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

2020/07/19 09:02

投稿

退会済みユーザー
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", IsDeleted = false, RowVersion = new Byte[8] { 0, 0, 0, 0, 0, 0, 0, 1 } };
267
+ Department department = new Department { Id = 6, DepartmentName = "TEST6" };
268
268
 
269
269
 
270
270
 

10

2020/07/19 09:02

投稿

退会済みユーザー
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

2020/07/19 08:59

投稿

退会済みユーザー
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

2020/07/19 08:58

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
 
8
8
 
9
- ① 任意でTransactionが必要な個所があるため、テスト時はcontextを利用しないように、UnitOfWorkクラスを変更する必要があるのかと考えていますが、どのようにすればよいか。
9
+ ① 任意でTransactionが必要な個所、または直接SQLを使用している箇所があるため、テスト時はcontextを操作しないように変更する必要があるが、どのようにすればよいか。
10
10
 
11
11
  ※Transaction以外のInsertなどは、参考URLの手順で、コントローラーのコンストラクタで切り替えできるようにしてます。
12
12
 

7

修正

2020/07/19 08:57

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
 
14
14
 
15
- ② ユニットテスト実装時に DepartmentsControllerTestで、[Authorize] をどのように認証させればよいか。
15
+ ② ユニットテストでは [Authorize] をどのように認証させればよいか。
16
16
 
17
17
 
18
18
 

6

修正

2020/07/19 08:47

投稿

退会済みユーザー
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.SaveAsync();
95
+ await unitOfWork.DepartmentRepository.SortAsync();// SQLで直接順序変更している
98
96
 
99
97
  dbContextTransaction.Commit();
100
98
 

5

修正

2020/07/19 08:44

投稿

退会済みユーザー
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

修正

2020/07/19 08:41

投稿

退会済みユーザー
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

修正

2020/07/19 08:38

投稿

退会済みユーザー
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

修正

2020/07/19 08:37

投稿

退会済みユーザー
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

修正

2020/07/19 08:36

投稿

退会済みユーザー
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