Skip to content

Commit

Permalink
Split test case to reduce travis build time (#568)
Browse files Browse the repository at this point in the history
* Split test case to reduce travis build time
  • Loading branch information
TobeyQin committed Jan 17, 2019
1 parent 77c8d42 commit b0e9ffa
Show file tree
Hide file tree
Showing 12 changed files with 247 additions and 31 deletions.
8 changes: 8 additions & 0 deletions .travis.yml
Expand Up @@ -12,16 +12,24 @@ python:
env:
- TEST_PARSER=tensorflow TEST_ONNX=true
- TEST_PARSER=tensorflow TEST_ONNX=false
- TEST_PARSER=tensorflow_2 TEST_ONNX=false
- TEST_PARSER=keras TEST_ONNX=true
- TEST_PARSER=keras_2 TEST_ONNX=true
- TEST_PARSER=keras TEST_ONNX=false
- TEST_PARSER=keras_2 TEST_ONNX=false
- TEST_PARSER=keras_3 TEST_ONNX=false
- TEST_PARSER=cntk TEST_ONNX=true
- TEST_PARSER=cntk TEST_ONNX=false
- TEST_PARSER=caffe TEST_ONNX=true
- TEST_PARSER=caffe TEST_ONNX=false
- TEST_PARSER=caffe_2 TEST_ONNX=false
- TEST_PARSER=mxnet TEST_ONNX=true
- TEST_PARSER=mxnet_2 TEST_ONNX=true
- TEST_PARSER=mxnet TEST_ONNX=false
- TEST_PARSER=mxnet_2 TEST_ONNX=false
- TEST_PARSER=pytorch TEST_ONNX=true
- TEST_PARSER=pytorch TEST_ONNX=false
- TEST_PARSER=pytorch_2 TEST_ONNX=false
- TEST_PARSER=paddle TEST_ONNX=true
- TEST_PARSER=paddle TEST_ONNX=false
- TEST_PARSER=coreml TEST_ONNX=true
Expand Down
17 changes: 4 additions & 13 deletions tests/test_caffe.py
Expand Up @@ -26,28 +26,19 @@ def get_test_table():
}
elif six.PY2: return { 'caffe' :
{
'alexnet' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'inception_v1' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'inception_v4' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'resnet152' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'squeezenet' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
# 'voc-fcn8s' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.tensorflow_emit],
'xception' : [TestModels.coreml_emit, TestModels.cntk_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'xception' : [TestModels.coreml_emit, TestModels.cntk_emit, TestModels.tensorflow_emit],

}
}
else:
return { 'caffe' :
{
# 'alexnet' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'inception_v1' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'inception_v4' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'resnet152' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'squeezenet' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
# 'vgg19' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
# 'voc-fcn8s' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.tensorflow_emit],
# 'voc-fcn16s' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.tensorflow_emit],
# 'voc-fcn32s' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.tensorflow_emit],
'xception' : [TestModels.coreml_emit, TestModels.cntk_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'xception' : [TestModels.coreml_emit, TestModels.cntk_emit, TestModels.tensorflow_emit],
}
}

Expand All @@ -58,4 +49,4 @@ def test_caffe():


if __name__ == '__main__':
test_caffe()
test_caffe()
56 changes: 56 additions & 0 deletions tests/test_caffe_2.py
@@ -0,0 +1,56 @@
from __future__ import absolute_import
from __future__ import print_function

import os
import sys
import six
from conversion_imagenet import TestModels

def get_test_table():
TRAVIS_CI = os.environ.get('TRAVIS')
if not TRAVIS_CI or TRAVIS_CI.lower() != 'true':
return None

ONNX = os.environ.get('TEST_ONNX')
if ONNX and ONNX.lower() == 'true':
return { 'caffe' :
{
'alexnet' : [TestModels.onnx_emit],
'inception_v1' : [TestModels.onnx_emit],
'inception_v4' : [TestModels.onnx_emit],
'resnet152' : [TestModels.onnx_emit],
'squeezenet' : [TestModels.onnx_emit],
# 'vgg19' : [TestModels.onnx_emit],
'xception' : [TestModels.onnx_emit],
}
}
elif six.PY2: return { 'caffe' :
{
'alexnet' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'inception_v4' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'squeezenet' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
# 'voc-fcn8s' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.tensorflow_emit],
'xception' : [TestModels.mxnet_emit, TestModels.pytorch_emit],
}
}
else:
return { 'caffe' :
{
'squeezenet' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'inception_v4' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
# 'vgg19' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
# 'voc-fcn8s' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.tensorflow_emit],
# 'voc-fcn16s' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.tensorflow_emit],
# 'voc-fcn32s' : [TestModels.cntk_emit, TestModels.coreml_emit, TestModels.tensorflow_emit],
'xception' : [TestModels.mxnet_emit, TestModels.pytorch_emit],
}
}

def test_caffe():
test_table = get_test_table()
tester = TestModels(test_table)
tester._test_function('caffe', tester.caffe_parse)


if __name__ == '__main__':
test_caffe()
9 changes: 0 additions & 9 deletions tests/test_keras.py
Expand Up @@ -16,11 +16,6 @@ def get_test_table():
'keras' : {
'vgg16' : [TestModels.onnx_emit],
'vgg19' : [TestModels.onnx_emit],
'inception_v3' : [TestModels.onnx_emit],
'resnet50' : [TestModels.onnx_emit],
'densenet' : [TestModels.onnx_emit],
# 'xception' : [TestModels.onnx_emit],
'mobilenet' : [TestModels.onnx_emit],
# 'nasnet' : [TestModels.onnx_emit],
},
}
Expand All @@ -30,10 +25,6 @@ def get_test_table():
'keras' : {
'vgg19' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'inception_v3' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'resnet50' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'densenet' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'xception' : [TestModels.tensorflow_emit, TestModels.keras_emit, TestModels.coreml_emit],
'mobilenet' : [TestModels.coreml_emit, TestModels.keras_emit, TestModels.tensorflow_emit],
}}


Expand Down
39 changes: 39 additions & 0 deletions tests/test_keras_2.py
@@ -0,0 +1,39 @@
from __future__ import absolute_import
from __future__ import print_function

import os
import sys
import six
from conversion_imagenet import TestModels

def get_test_table():
if six.PY3:
return None

ONNX = os.environ.get('TEST_ONNX')
if ONNX and ONNX.lower() == 'true':
return {
'keras' : {
'inception_v3' : [TestModels.onnx_emit],
'resnet50' : [TestModels.onnx_emit],
# 'xception' : [TestModels.onnx_emit],
# 'nasnet' : [TestModels.onnx_emit],
},
}

else:
return {
'keras' : {
'resnet50' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'xception' : [TestModels.tensorflow_emit, TestModels.keras_emit, TestModels.coreml_emit],
}}


def test_keras():
test_table = get_test_table()
tester = TestModels(test_table)
tester._test_function('keras', tester.keras_parse)


if __name__ == '__main__':
test_keras()
39 changes: 39 additions & 0 deletions tests/test_keras_3.py
@@ -0,0 +1,39 @@
from __future__ import absolute_import
from __future__ import print_function

import os
import sys
import six
from conversion_imagenet import TestModels

def get_test_table():
if six.PY3:
return None

ONNX = os.environ.get('TEST_ONNX')
if ONNX and ONNX.lower() == 'true':
return {
'keras' : {
'densenet' : [TestModels.onnx_emit],
'mobilenet' : [TestModels.onnx_emit],
# 'xception' : [TestModels.onnx_emit],
# 'nasnet' : [TestModels.onnx_emit],
},
}

else:
return {
'keras' : {
'densenet' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'mobilenet' : [TestModels.coreml_emit, TestModels.keras_emit, TestModels.tensorflow_emit],
}}


def test_keras():
test_table = get_test_table()
tester = TestModels(test_table)
tester._test_function('keras', tester.keras_parse)


if __name__ == '__main__':
test_keras()
4 changes: 0 additions & 4 deletions tests/test_mxnet.py
Expand Up @@ -17,16 +17,12 @@ def get_test_table():
if ONNX and ONNX.lower() == 'true':
return { 'mxnet' : {
'imagenet1k-inception-bn' : [TestModels.onnx_emit],
'imagenet1k-resnet-18' : [TestModels.onnx_emit],
'imagenet1k-resnet-152' : [TestModels.onnx_emit],
'squeezenet_v1.1' : [TestModels.onnx_emit],
'imagenet1k-resnext-50' : [TestModels.onnx_emit],
}}
else:
return { 'mxnet' : {
'imagenet1k-inception-bn' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'imagenet1k-resnet-18' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'imagenet1k-resnet-152' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'squeezenet_v1.1' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'imagenet1k-resnext-50' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
}}
Expand Down
37 changes: 37 additions & 0 deletions tests/test_mxnet_2.py
@@ -0,0 +1,37 @@
from __future__ import absolute_import
from __future__ import print_function

import os
import sys
import six
from conversion_imagenet import TestModels

def get_test_table():
TRAVIS_CI = os.environ.get('TRAVIS')
if not TRAVIS_CI or TRAVIS_CI.lower() != 'true':
return None

if six.PY2: return None

ONNX = os.environ.get('TEST_ONNX')
if ONNX and ONNX.lower() == 'true':
return { 'mxnet' : {
'imagenet1k-resnet-18' : [TestModels.onnx_emit],
'imagenet1k-resnet-152' : [TestModels.onnx_emit],
}}
else:
return { 'mxnet' : {
'imagenet1k-resnet-18' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'imagenet1k-resnet-152' : [TestModels.caffe_emit, TestModels.cntk_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
}}


def test_mxnet():
test_table = get_test_table()
tester = TestModels(test_table)
tester._test_function('mxnet', tester.mxnet_parse)


if __name__ == '__main__':
test_mxnet()

2 changes: 0 additions & 2 deletions tests/test_pytorch.py
Expand Up @@ -17,8 +17,6 @@ def get_test_table():
return { 'pytorch' : {
'alexnet' : [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'densenet201' : [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'inception_v3': [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'resnet152' : [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
}}

def test_pytorch():
Expand Down
29 changes: 29 additions & 0 deletions tests/test_pytorch_2.py
@@ -0,0 +1,29 @@
from __future__ import absolute_import
from __future__ import print_function

import os
import sys
from conversion_imagenet import TestModels

def get_test_table():
TRAVIS_CI = os.environ.get('TRAVIS')
if not TRAVIS_CI or TRAVIS_CI.lower() != 'true':
return None

ONNX = os.environ.get('TEST_ONNX')
if ONNX and ONNX.lower() == 'true':
return None

return { 'pytorch' : {
'inception_v3': [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'resnet152' : [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
}}

def test_pytorch():
test_table = get_test_table()
tester = TestModels(test_table)
tester._test_function('pytorch', tester.pytorch_parse)


if __name__ == '__main__':
test_pytorch()
3 changes: 0 additions & 3 deletions tests/test_tensorflow.py
Expand Up @@ -21,9 +21,6 @@ def get_test_table():
'inception_v1' : [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'inception_v3' : [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.cntk_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'resnet_v1_152' : [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'resnet_v2_152' : [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.cntk_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'mobilenet_v1_1.0' : [TestModels.coreml_emit, TestModels.cntk_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'mobilenet_v2_1.0_224' : [TestModels.coreml_emit, TestModels.cntk_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
#'nasnet-a_large' : [TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
#'inception_resnet_v2' : [TestModels.caffe_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
}}
Expand Down
35 changes: 35 additions & 0 deletions tests/test_tensorflow_2.py
@@ -0,0 +1,35 @@
from __future__ import absolute_import
from __future__ import print_function

import os
import sys
from conversion_imagenet import TestModels


def get_test_table():
TRAVIS_CI = os.environ.get('TRAVIS')
if not TRAVIS_CI or TRAVIS_CI.lower() != 'true':
return None

ONNX = os.environ.get('TEST_ONNX')
if ONNX and ONNX.lower() == 'true':
return None

return { 'tensorflow' :
{
'resnet_v2_152' : [TestModels.caffe_emit, TestModels.coreml_emit, TestModels.cntk_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'mobilenet_v1_1.0' : [TestModels.coreml_emit, TestModels.cntk_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
'mobilenet_v2_1.0_224' : [TestModels.coreml_emit, TestModels.cntk_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
#'nasnet-a_large' : [TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
#'inception_resnet_v2' : [TestModels.caffe_emit, TestModels.keras_emit, TestModels.mxnet_emit, TestModels.pytorch_emit, TestModels.tensorflow_emit],
}}


def test_tensorflow():
test_table = get_test_table()
tester = TestModels(test_table)
tester._test_function('tensorflow', tester.tensorflow_parse)


if __name__ == "__main__":
test_tensorflow()

0 comments on commit b0e9ffa

Please sign in to comment.