parallel_tests 2.3.1 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Readme.md +33 -15
- data/lib/parallel_tests/tasks.rb +11 -1
- data/lib/parallel_tests/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ac1a67e85b702af960f6e713e19430eddfd076b5
|
4
|
+
data.tar.gz: ee8509f054d88880bd2ae77d03b33fdc6fc03ed2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ee3f49cf7cf8e120e1df061477ee8211c76f3fb8a60ec605c9b838ce99fdad8d015e12492a4f9317e896541a4b96c43a6f138d340b9fc993a08492a235dc02b
|
7
|
+
data.tar.gz: fa4dba5b0c02c298b871612dc4c5934a0063cb31272547fe3b376edfe379eaaff0b562eb8786c61186744582ff76fcbb04f7ec04be56a82d9cd7857b147954b5
|
data/Readme.md
CHANGED
@@ -36,6 +36,9 @@ test:
|
|
36
36
|
### Copy development schema (repeat after migrations)
|
37
37
|
rake parallel:prepare
|
38
38
|
|
39
|
+
### Setup environment from scratch (create db and loads schema, useful for CI)
|
40
|
+
rake parallel:setup
|
41
|
+
|
39
42
|
### Run!
|
40
43
|
rake parallel:test # Test::Unit
|
41
44
|
rake parallel:spec # RSpec
|
@@ -230,26 +233,41 @@ You can run any kind of code in parallel with -e / --exec
|
|
230
233
|
|
231
234
|
TIPS
|
232
235
|
====
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
-
|
237
|
-
-
|
238
|
-
-
|
239
|
-
- [
|
240
|
-
|
241
|
-
|
242
|
-
|
236
|
+
|
237
|
+
### RSpec
|
238
|
+
|
239
|
+
- Add a `.rspec_parallel` to use different options, e.g. **no --drb**
|
240
|
+
- Remove `--loadby` from `.rspec`
|
241
|
+
- Instantly see failures (instead of just a red F) with [rspec-instafail](https://github.com/grosser/rspec-instafail)
|
242
|
+
- Use [rspec-retry](https://github.com/NoRedInk/rspec-retry) (not rspec-rerun) to rerun failed tests.
|
243
|
+
|
244
|
+
### Cucumber
|
245
|
+
|
246
|
+
- Add a `parallel: foo` profile to your `config/cucumber.yml` and it will be used to run parallel tests
|
247
|
+
- [ReportBuilder](https://github.com/rajatthareja/ReportBuilder) can help with combining parallel test results
|
248
|
+
- Supports Cucumber 2.0+ and is actively maintained
|
249
|
+
- Combines many JSON files into a single file
|
250
|
+
- Builds a HTML report from JSON with support for debug msgs & embedded Base64 images.
|
251
|
+
|
252
|
+
### General
|
243
253
|
- [SQL schema format] use :ruby schema format to get faster parallel:prepare`
|
244
254
|
- [ZSH] use quotes to use rake arguments `rake "parallel:prepare[3]"`
|
245
|
-
- [
|
246
|
-
|
247
|
-
- [
|
248
|
-
- [Distributed parallel test (e.g. Travis Support)](https://github.com/grosser/parallel_tests/wiki/Distributed-Parallel-Tests-and-Travis-Support)
|
255
|
+
- [Memcached] use different namespaces<br/>
|
256
|
+
e.g. `config.cache_store = ..., namespace: "test_#{ENV['TEST_ENV_NUMBER']}"`
|
257
|
+
- Debug errors that only happen with multiple files using `--verbose` and [cleanser](https://github.com/grosser/cleanser)
|
249
258
|
- `export PARALLEL_TEST_PROCESSORS=13` to override default processor count
|
250
259
|
- Shell alias: `alias prspec='parallel_rspec -m 2 --'`
|
251
260
|
- [Spring] to use spring you have to [patch it](https://github.com/grosser/parallel_tests/wiki/Spring)
|
252
|
-
-
|
261
|
+
- `--first-is-1` will make the first environment be `1`, so you can test while running your full suite.<br/>
|
262
|
+
`export PARALLEL_TEST_FIRST_IS_1=true` will provide the same result
|
263
|
+
- [email_spec and/or action_mailer_cache_delivery](https://github.com/grosser/parallel_tests/wiki)
|
264
|
+
- [zeus-parallel_tests](https://github.com/sevos/zeus-parallel_tests)
|
265
|
+
- [Distributed parallel test (e.g. Travis Support)](https://github.com/grosser/parallel_tests/wiki/Distributed-Parallel-Tests-and-Travis-Support)
|
266
|
+
- [Capybara setup](https://github.com/grosser/parallel_tests/wiki)
|
267
|
+
- [Sphinx setup](https://github.com/grosser/parallel_tests/wiki)
|
268
|
+
- [Capistrano setup](https://github.com/grosser/parallel_tests/wiki/Remotely-with-capistrano) let your tests run on a big box instead of your laptop
|
269
|
+
|
270
|
+
Contribute your own gotaches to the [Wiki](https://github.com/grosser/parallel_tests/wiki) or even better open a PR :)
|
253
271
|
|
254
272
|
TODO
|
255
273
|
====
|
data/lib/parallel_tests/tasks.rb
CHANGED
@@ -43,6 +43,10 @@ module ParallelTests
|
|
43
43
|
end
|
44
44
|
end
|
45
45
|
|
46
|
+
def suppress_schema_load_output(command)
|
47
|
+
ParallelTests::Tasks.suppress_output(command, "^ ->\\|^-- ")
|
48
|
+
end
|
49
|
+
|
46
50
|
def check_for_pending_migrations
|
47
51
|
["db:abort_if_pending_migrations", "app:db:abort_if_pending_migrations"].each do |abort_migrations|
|
48
52
|
if Rake::Task.task_defined?(abort_migrations)
|
@@ -72,6 +76,12 @@ module ParallelTests
|
|
72
76
|
end
|
73
77
|
|
74
78
|
namespace :parallel do
|
79
|
+
desc "setup test databases via db:setup --> parallel:setup[num_cpus]"
|
80
|
+
task :setup, :count do |_,args|
|
81
|
+
command = "rake db:setup RAILS_ENV=#{ParallelTests::Tasks.rails_env}"
|
82
|
+
ParallelTests::Tasks.run_in_parallel(ParallelTests::Tasks.suppress_schema_load_output(command), args)
|
83
|
+
end
|
84
|
+
|
75
85
|
desc "create test databases via db:create --> parallel:create[num_cpus]"
|
76
86
|
task :create, :count do |_,args|
|
77
87
|
ParallelTests::Tasks.run_in_parallel("rake db:create RAILS_ENV=#{ParallelTests::Tasks.rails_env}", args)
|
@@ -107,7 +117,7 @@ namespace :parallel do
|
|
107
117
|
desc "load dumped schema for test databases via db:schema:load --> parallel:load_schema[num_cpus]"
|
108
118
|
task :load_schema, :count do |_,args|
|
109
119
|
command = "rake #{ParallelTests::Tasks.purge_before_load} db:schema:load RAILS_ENV=#{ParallelTests::Tasks.rails_env}"
|
110
|
-
ParallelTests::Tasks.run_in_parallel(ParallelTests::Tasks.
|
120
|
+
ParallelTests::Tasks.run_in_parallel(ParallelTests::Tasks.suppress_schema_load_output(command), args)
|
111
121
|
end
|
112
122
|
|
113
123
|
# load the structure from the structure.sql file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: parallel_tests
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Grosser
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-02-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: parallel
|