質問編集履歴

3

もっとシンプルに

2017/05/15 00:16

投稿

tkgoya
tkgoya

スコア7

test CHANGED
@@ -1 +1 @@
1
- nightmarejs on Amazon Workspaces で1ページ処理するのに10分掛かってしまいます
1
+ Nightmare(ナイトメア)で1ページのテストに10分掛かってしまいます
test CHANGED
@@ -1,103 +1,19 @@
1
- ###やたいこと
1
+ 何か良い解決方法があますでしょうか。
2
2
 
3
- 0. 自社WEBサービスのE2Eテストを自動化したいです
3
+ 些細なTipsもなんでも結構で。情報お待ちしております。
4
+
5
+ 宜しくお願いいたします。
4
6
 
5
7
 
6
8
 
7
- ###前提
9
+ ###やりたいこと
8
10
 
9
- 0. **ナイトメア**[(公式)](http://www.nightmarejs.org/)[(GitHub)](https://github.com/segmentio/nightmare)使用たいす(クロスブラウザは重要視ておらず、開発性と保守性より。)
11
+ 0. **Amazon Workspaces** 上に借りている **Windows 7** に **[Nightmare](http://www.nightmarejs.org/)** インストール、自動でブラウザテストを実行たい
10
12
 
11
- 0. 実行環境は**Amazon EC2**もしくは**Amazon Workspaces**上に構築
13
+ 0. 例)http://example.com へ行き、スクリーンショットを保存する
12
-
13
- ※当初、実行環境はLinuxを想定しておりましたが、X環境の導入に手こずり、GUI環境、それならWindowsでも、EC2じゃなくてWorkspacesでも良いのでは?という経緯があります。
14
14
 
15
15
 
16
16
 
17
17
  ###問題点
18
18
 
19
- 0. **Amazon Workspaces**上の**Windows 7**環境で**Nightmare**起動してみましたが異常に動作が遅く、以下のような簡単な処理に10分も掛かってしまいました。これを**遅くても30秒程度で完了するようにしたい**です
20
-
21
- ① ブラウザ(Electron)起動
22
-
23
- ② example.com ページに移動
24
-
25
- ③ スクリーンショット保存
26
-
27
- 0. スクリーンショットについてはページが縦長で1画面に収まらない場合、1つの画像として上から下まで繋がった画像として取得したいです
28
-
29
-
30
-
31
- **小さなアドバイスでも良いので、皆様のお知恵をお貸しください**
32
-
33
-
34
-
35
- ###実行したソース
36
-
37
- test.js
38
-
39
- ```text.js
40
-
41
- var Nightmare = require('nightmare'),
19
+ 0. 例のような処理に、10分も掛かってしまう(セレニウムだと30秒程度で終わる)
42
-
43
- vo = require('vo');
44
-
45
-
46
-
47
- function * run() {
48
-
49
- var nightmare = new Nightmare({
50
-
51
- show: false,
52
-
53
- width: 1024,
54
-
55
- height: 768
56
-
57
- });
58
-
59
- var dimensions = yield nightmare.goto('http://exapmle.com').wait('body').evaluate(function() {
60
-
61
- var body = document.querySelector('body');
62
-
63
- return {
64
-
65
- height: body.scrollHeight,
66
-
67
- width:body.scrollWidth
68
-
69
- }
70
-
71
- });
72
-
73
-
74
-
75
- console.dir(dimensions);
76
-
77
- yield nightmare.viewport(dimensions.width, dimensions.height).wait(1000).screenshot(require('path').join(__dirname, 'google.png'));
78
-
79
-
80
-
81
- yield nightmare.end();
82
-
83
- }
84
-
85
-
86
-
87
- vo(run)(function() {
88
-
89
- console.log('done');
90
-
91
- });
92
-
93
- ```
94
-
95
-
96
-
97
- 上記JSを、下記のように実行
98
-
99
- ```sh
100
-
101
- node test.js
102
-
103
- ```

2

もっとシンプルに

2017/05/15 00:16

投稿

tkgoya
tkgoya

スコア7

test CHANGED
File without changes
test CHANGED
@@ -16,15 +16,13 @@
16
16
 
17
17
  ###問題点
18
18
 
19
- 0. **Amazon Workspaces**上の**Windows 7**環境で**Nightmare**起動してみましたが異常に動作が遅く、以下のような簡単な処理に10分も掛かってしまいました。
19
+ 0. **Amazon Workspaces**上の**Windows 7**環境で**Nightmare**起動してみましたが異常に動作が遅く、以下のような簡単な処理に10分も掛かってしまいました。これを**遅くても30秒程度で完了するようにしたい**です
20
20
 
21
21
  ① ブラウザ(Electron)起動
22
22
 
23
23
  ② example.com ページに移動
24
24
 
25
25
  ③ スクリーンショット保存
26
-
27
- これを**Amazon Workspaces**上の**Windows 7**でも30秒程度で完了するようにしたいです
28
26
 
29
27
  0. スクリーンショットについてはページが縦長で1画面に収まらない場合、1つの画像として上から下まで繋がった画像として取得したいです
30
28
 

1

文章の重複を修正

2017/05/12 09:51

投稿

tkgoya
tkgoya

スコア7

test CHANGED
File without changes
test CHANGED
@@ -23,8 +23,6 @@
23
23
  ② example.com ページに移動
24
24
 
25
25
  ③ スクリーンショット保存
26
-
27
- のような処理に、10分も掛かってしまいました。ローカルのWindows 10実機だと30秒くらいだったのですが。
28
26
 
29
27
  これを**Amazon Workspaces**上の**Windows 7**でも30秒程度で完了するようにしたいです
30
28