From 631a27fe0dad5aca229f4186385488aad4662bee Mon Sep 17 00:00:00 2001 From: biqiao Date: Tue, 9 Jan 2018 16:18:00 +0800 Subject: [PATCH] first commit --- .idea/apiTest.iml | 11 + .idea/inspectionProfiles/Project_Default.xml | 12 + .idea/misc.xml | 4 + .idea/modules.xml | 8 + .idea/vcs.xml | 6 + .idea/workspace.xml | 920 +++++++++++++++++++++ HTMLTestRunner.py | 857 +++++++++++++++++++ HTMLTestRunner.pyc | Bin 0 -> 22348 bytes HTMLTestRunner_bak.py | 857 +++++++++++++++++++ README | 1 + __pycache__/HTMLTestRunner.cpython-36.pyc | Bin 0 -> 19924 bytes __pycache__/HTMLTestRunner_bak.cpython-36.pyc | Bin 0 -> 19927 bytes __pycache__/configParse.cpython-36.pyc | Bin 0 -> 739 bytes __pycache__/run_test.cpython-36.pyc | Bin 0 -> 686 bytes configParse.py | 23 + .../__pycache__/config_data.cpython-36.pyc | Bin 0 -> 1748 bytes .../__pycache__/create_testdata.cpython-36.pyc | Bin 0 -> 12842 bytes data_fixture/__pycache__/mysql_db.cpython-36.pyc | Bin 0 -> 2948 bytes data_fixture/config_data.py | 85 ++ data_fixture/create_testdata.py | 484 +++++++++++ data_fixture/mysql_db.py | 87 ++ data_fixture/test_verify.py | 11 + report/test_report.html | 303 +++++++ run_test.py | 31 + run_test.pyc | Bin 0 -> 811 bytes test_cases/1.jpg | Bin 0 -> 220825 bytes test_cases/1.png | Bin 0 -> 220825 bytes .../app_record_statistic.cpython-36.pyc | Bin 0 -> 10486 bytes test_cases/__pycache__/debugggggg.cpython-36.pyc | Bin 0 -> 2537 bytes .../__pycache__/eleccard_check.cpython-36.pyc | Bin 0 -> 2879 bytes .../__pycache__/eleccard_setUp.cpython-36.pyc | Bin 0 -> 5798 bytes test_cases/__pycache__/parent_space.cpython-36.pyc | Bin 0 -> 4981 bytes .../__pycache__/personal_info.cpython-36.pyc | Bin 0 -> 12149 bytes test_cases/__pycache__/press.cpython-36.pyc | Bin 0 -> 3613 bytes .../__pycache__/region_grade_school.cpython-36.pyc | Bin 0 -> 4297 bytes test_cases/__pycache__/register.cpython-36.pyc | Bin 0 -> 10327 bytes test_cases/__pycache__/sub_account.cpython-36.pyc | Bin 0 -> 5270 bytes test_cases/__pycache__/subject_sync.cpython-36.pyc | Bin 0 -> 4965 bytes test_cases/app_record_statistic.py | 259 ++++++ test_cases/debugggggg.py | 118 +++ test_cases/eleccard_check.py | 60 ++ test_cases/eleccard_setUp.py | 128 +++ test_cases/parent_space.py | 106 +++ test_cases/personal_info.py | 257 ++++++ test_cases/press.py | 91 ++ test_cases/region_grade_school.py | 89 ++ test_cases/register.py | 243 ++++++ test_cases/sub_account.py | 118 +++ test_cases/subject_sync.py | 111 +++ .../__pycache__/test_elecCard.cpython-36.pyc | Bin 0 -> 1208 bytes test_suites/test_elecCard.py | 43 + 51 files changed, 5323 insertions(+) create mode 100644 .idea/apiTest.iml create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 .idea/workspace.xml create mode 100644 HTMLTestRunner.py create mode 100644 HTMLTestRunner.pyc create mode 100644 HTMLTestRunner_bak.py create mode 100644 README create mode 100644 __pycache__/HTMLTestRunner.cpython-36.pyc create mode 100644 __pycache__/HTMLTestRunner_bak.cpython-36.pyc create mode 100644 __pycache__/configParse.cpython-36.pyc create mode 100644 __pycache__/run_test.cpython-36.pyc create mode 100644 configParse.py create mode 100644 data_fixture/__pycache__/config_data.cpython-36.pyc create mode 100644 data_fixture/__pycache__/create_testdata.cpython-36.pyc create mode 100644 data_fixture/__pycache__/mysql_db.cpython-36.pyc create mode 100644 data_fixture/config_data.py create mode 100644 data_fixture/create_testdata.py create mode 100644 data_fixture/mysql_db.py create mode 100644 data_fixture/test_verify.py create mode 100644 report/test_report.html create mode 100644 run_test.py create mode 100644 run_test.pyc create mode 100644 test_cases/1.jpg create mode 100644 test_cases/1.png create mode 100644 test_cases/__pycache__/app_record_statistic.cpython-36.pyc create mode 100644 test_cases/__pycache__/debugggggg.cpython-36.pyc create mode 100644 test_cases/__pycache__/eleccard_check.cpython-36.pyc create mode 100644 test_cases/__pycache__/eleccard_setUp.cpython-36.pyc create mode 100644 test_cases/__pycache__/parent_space.cpython-36.pyc create mode 100644 test_cases/__pycache__/personal_info.cpython-36.pyc create mode 100644 test_cases/__pycache__/press.cpython-36.pyc create mode 100644 test_cases/__pycache__/region_grade_school.cpython-36.pyc create mode 100644 test_cases/__pycache__/register.cpython-36.pyc create mode 100644 test_cases/__pycache__/sub_account.cpython-36.pyc create mode 100644 test_cases/__pycache__/subject_sync.cpython-36.pyc create mode 100644 test_cases/app_record_statistic.py create mode 100644 test_cases/debugggggg.py create mode 100644 test_cases/eleccard_check.py create mode 100644 test_cases/eleccard_setUp.py create mode 100644 test_cases/parent_space.py create mode 100644 test_cases/personal_info.py create mode 100644 test_cases/press.py create mode 100644 test_cases/region_grade_school.py create mode 100644 test_cases/register.py create mode 100644 test_cases/sub_account.py create mode 100644 test_cases/subject_sync.py create mode 100644 test_suites/__pycache__/test_elecCard.cpython-36.pyc create mode 100644 test_suites/test_elecCard.py diff --git a/.idea/apiTest.iml b/.idea/apiTest.iml new file mode 100644 index 0000000..6711606 --- /dev/null +++ b/.idea/apiTest.iml @@ -0,0 +1,11 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..edf0852 --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,12 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..106775b --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..53ef9c7 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..4ac72f4 --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,920 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1512799492607 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + file://$PROJECT_DIR$/test_cases/sub_account.py + 56 + + + file://$PROJECT_DIR$/test_cases/register.py + 19 + + + file://$PROJECT_DIR$/test_cases/personal_info.py + 253 + + + file://$PROJECT_DIR$/test_cases/debugggggg.py + 18 + + + file://$PROJECT_DIR$/test_cases/app_record_statistic.py + 181 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/HTMLTestRunner.py b/HTMLTestRunner.py new file mode 100644 index 0000000..508234e --- /dev/null +++ b/HTMLTestRunner.py @@ -0,0 +1,857 @@ +# -*- coding: utf-8 -*- + +""" +A TestRunner for use with the Python unit testing framework. It +generates a HTML report to show the result at a glance. + +The simplest way to use this is to invoke its main method. E.g. + + import unittest + import HTMLTestRunner + + ... define your tests ... + + if __name__ == '__main__': + HTMLTestRunner.main() + + +For more customization options, instantiates a HTMLTestRunner object. +HTMLTestRunner is a counterpart to unittest's TextTestRunner. E.g. + + # output to a file + fp = file('my_report.html', 'wb') + runner = HTMLTestRunner.HTMLTestRunner( + stream=fp, + title='My unit test', + description='This demonstrates the report output by HTMLTestRunner.' + ) + + # Use an external stylesheet. + # See the Template_mixin class for more customizable options + runner.STYLESHEET_TMPL = '' + + # run the test + runner.run(my_test_suite) + + +------------------------------------------------------------------------ +Copyright (c) 2004-2007, Wai Yip Tung +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name Wai Yip Tung nor the names of its contributors may be + used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +""" + +# URL: http://tungwaiyip.info/software/HTMLTestRunner.html + +__author__ = "Wai Yip Tung" +__version__ = "0.8.2" + + +""" +Change History + +Version 0.8.2 +* Show output inline instead of popup window (Viorel Lupu). + +Version in 0.8.1 +* Validated XHTML (Wolfgang Borgert). +* Added description of test classes and test cases. + +Version in 0.8.0 +* Define Template_mixin class for customization. +* Workaround a IE 6 bug that it does not treat + +%(heading)s +%(report)s +%(ending)s + + + +""" + # variables: (title, generator, stylesheet, heading, report, ending) + + + # ------------------------------------------------------------------------ + # Stylesheet + # + # alternatively use a for external style sheet, e.g. + # + + STYLESHEET_TMPL = """ + +""" + + + + # ------------------------------------------------------------------------ + # Heading + # + + HEADING_TMPL = """
+

%(title)s

+%(parameters)s +

%(description)s

+
+ +""" # variables: (title, parameters, description) + + HEADING_ATTRIBUTE_TMPL = """

%(name)s: %(value)s

+""" # variables: (name, value) + + + + # ------------------------------------------------------------------------ + # Report + # + + REPORT_TMPL = """ +

Show +Summary +Failed +All +

+ ++++++++ + + + + + + + + +%(test_list)s + + + + + + + + +
Test Group/Test caseCountPassFailErrorView
Total%(count)s%(Pass)s%(fail)s%(error)s 
+""" # variables: (test_list, count, Pass, fail, error) + + REPORT_CLASS_TMPL = r""" + + %(desc)s + %(count)s + %(Pass)s + %(fail)s + %(error)s + Detail + +""" # variables: (style, desc, count, Pass, fail, error, cid) + + + REPORT_TEST_WITH_OUTPUT_TMPL = r""" + +
%(desc)s
+ + + + + %(status)s + + + + + + +""" # variables: (tid, Class, style, desc, status) + + + REPORT_TEST_NO_OUTPUT_TMPL = r""" + +
%(desc)s
+ %(status)s + +""" # variables: (tid, Class, style, desc, status) + + + REPORT_TEST_OUTPUT_TMPL = r""" +%(id)s: %(output)s +""" # variables: (id, output) + + + + # ------------------------------------------------------------------------ + # ENDING + # + + ENDING_TMPL = """
 
""" + +# -------------------- The end of the Template class ------------------- + + +TestResult = unittest.TestResult + +class _TestResult(TestResult): + # note: _TestResult is a pure representation of results. + # It lacks the output and reporting ability compares to unittest._TextTestResult. + + def __init__(self, verbosity=1): + TestResult.__init__(self) + self.stdout0 = None + self.stderr0 = None + self.success_count = 0 + self.failure_count = 0 + self.error_count = 0 + self.verbosity = verbosity + + # result is a list of result in 4 tuple + # ( + # result code (0: success; 1: fail; 2: error), + # TestCase object, + # Test output (byte string), + # stack trace, + # ) + self.result = [] + + + def startTest(self, test): + TestResult.startTest(self, test) + # just one buffer for both stdout and stderr + self.outputBuffer = io.StringIO() + stdout_redirector.fp = self.outputBuffer + stderr_redirector.fp = self.outputBuffer + self.stdout0 = sys.stdout + self.stderr0 = sys.stderr + sys.stdout = stdout_redirector + sys.stderr = stderr_redirector + + + def complete_output(self): + """ + Disconnect output redirection and return buffer. + Safe to call multiple times. + """ + if self.stdout0: + sys.stdout = self.stdout0 + sys.stderr = self.stderr0 + self.stdout0 = None + self.stderr0 = None + return self.outputBuffer.getvalue() + + + def stopTest(self, test): + # Usually one of addSuccess, addError or addFailure would have been called. + # But there are some path in unittest that would bypass this. + # We must disconnect stdout in stopTest(), which is guaranteed to be called. + self.complete_output() + + + def addSuccess(self, test): + self.success_count += 1 + TestResult.addSuccess(self, test) + output = self.complete_output() + self.result.append((0, test, output, '')) + if self.verbosity > 1: + sys.stderr.write('ok ') + sys.stderr.write(str(test)) + sys.stderr.write('\n') + else: + sys.stderr.write('.') + + def addError(self, test, err): + self.error_count += 1 + TestResult.addError(self, test, err) + _, _exc_str = self.errors[-1] + output = self.complete_output() + self.result.append((2, test, output, _exc_str)) + if self.verbosity > 1: + sys.stderr.write('E ') + sys.stderr.write(str(test)) + sys.stderr.write('\n') + else: + sys.stderr.write('E') + + def addFailure(self, test, err): + self.failure_count += 1 + TestResult.addFailure(self, test, err) + _, _exc_str = self.failures[-1] + output = self.complete_output() + self.result.append((1, test, output, _exc_str)) + if self.verbosity > 1: + sys.stderr.write('F ') + sys.stderr.write(str(test)) + sys.stderr.write('\n') + else: + sys.stderr.write('F') + + +class HTMLTestRunner(Template_mixin): + """ + """ + #def __init__(self, stream=sys.stdout, verbosity=1, title=None, description=None): + def __init__(self, outputdir, verbosity=1, title=None, description=None, report_name='test_report.html'): + #self.stream = self._create_output_file(outputdir, report_name) + self.outputdir = outputdir + self.report_name = report_name + self.verbosity = verbosity + if title is None: + self.title = self.DEFAULT_TITLE + else: + self.title = title + if description is None: + self.description = self.DEFAULT_DESCRIPTION + else: + self.description = description + + self.startTime = datetime.datetime.now() + + + def _create_output_file(self, output, report_name): + import os + """ Generate the report file in the given path. """ + current_dir = os.getcwd() + dir_to = os.path.join(current_dir, output) + if not os.path.exists(dir_to): + os.makedirs(dir_to) + path_file = os.path.join(dir_to, report_name) + return path_file + + + def run(self, test): + "Run the given test case or test suite." + result = _TestResult(self.verbosity) + test(result) + self.stopTime = datetime.datetime.now() + self.generateReport(test, result) + # print >> sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime) + print(sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime)) + return result + + + def sortResult(self, result_list): + # unittest does not seems to run in any particular order. + # Here at least we want to group them together by class. + rmap = {} + classes = [] + for n,t,o,e in result_list: + cls = t.__class__ + if not cls in rmap: + rmap[cls] = [] + classes.append(cls) + rmap[cls].append((n,t,o,e)) + r = [(cls, rmap[cls]) for cls in classes] + return r + + + def getReportAttributes(self, result): + """ + Return report attributes as a list of (name, value). + Override this to add custom attributes. + """ + startTime = str(self.startTime)[:19] + duration = str(self.stopTime - self.startTime) + status = [] + if result.success_count: status.append('Pass %s' % result.success_count) + if result.failure_count: status.append('Failure %s' % result.failure_count) + if result.error_count: status.append('Error %s' % result.error_count ) + if status: + status = ' '.join(status) + else: + status = 'none' + return [ + ('Start Time', startTime), + ('Duration', duration), + ('Status', status), + ] + + + + def _generate_stylesheet(self): + return self.STYLESHEET_TMPL + + + def _generate_heading(self, report_attrs): + a_lines = [] + for name, value in report_attrs: + line = self.HEADING_ATTRIBUTE_TMPL % dict( + name = saxutils.escape(name), + value = saxutils.escape(value), + ) + a_lines.append(line) + heading = self.HEADING_TMPL % dict( + title = saxutils.escape(self.title), + parameters = ''.join(a_lines), + description = saxutils.escape(self.description), + ) + return heading + + + def _generate_report(self, result): + rows = [] + sortedResult = self.sortResult(result.result) + for cid, (cls, cls_results) in enumerate(sortedResult): + # subtotal for a class + np = nf = ne = 0 + for n,t,o,e in cls_results: + if n == 0: np += 1 + elif n == 1: nf += 1 + else: ne += 1 + + # format class description + if cls.__module__ == "__main__": + name = cls.__name__ + else: + name = "%s.%s" % (cls.__module__, cls.__name__) + doc = cls.__doc__ and cls.__doc__.split("\n")[0] or "" + desc = doc and '%s: %s' % (name, doc) or name + + row = self.REPORT_CLASS_TMPL % dict( + style = ne > 0 and 'errorClass' or nf > 0 and 'failClass' or 'passClass', + desc = desc, + count = np+nf+ne, + Pass = np, + fail = nf, + error = ne, + cid = 'c%s' % (cid+1), + ) + rows.append(row) + + for tid, (n,t,o,e) in enumerate(cls_results): + self._generate_report_test(rows, cid, tid, n, t, o, e) + + report = self.REPORT_TMPL % dict( + test_list = ''.join(rows), + count = str(result.success_count+result.failure_count+result.error_count), + Pass = str(result.success_count), + fail = str(result.failure_count), + error = str(result.error_count), + ) + return report + + + def _generate_report_test(self, rows, cid, tid, n, t, o, e): + # e.g. 'pt1.1', 'ft1.1', etc + has_output = bool(o or e) + tid = (n == 0 and 'p' or 'f') + 't%s.%s' % (cid+1,tid+1) + name = t.id().split('.')[-1] + doc = t.shortDescription() or "" + desc = doc and ('%s: %s' % (name, doc)) or name + tmpl = has_output and self.REPORT_TEST_WITH_OUTPUT_TMPL or self.REPORT_TEST_NO_OUTPUT_TMPL + + # o and e should be byte string because they are collected from stdout and stderr? + if isinstance(o,str): + # TODO: some problem with 'string_escape': it escape \n and mess up formating + # uo = unicode(o.encode('string_escape')) + # uo = o.decode('latin-1') + uo = e + else: + uo = o + if isinstance(e,str): + # TODO: some problem with 'string_escape': it escape \n and mess up formating + # ue = unicode(e.encode('string_escape')) + # ue = e.decode('latin-1') + ue = e + else: + ue = e + + script = self.REPORT_TEST_OUTPUT_TMPL % dict( + id = tid, + output = saxutils.escape(str(uo)+ue), + ) + + row = tmpl % dict( + tid = tid, + Class = (n == 0 and 'hiddenRow' or 'none'), + style = n == 2 and 'errorCase' or (n == 1 and 'failCase' or 'none'), + desc = desc, + script = script, + status = self.STATUS[n], + ) + rows.append(row) + if not has_output: + return + + def _generate_ending(self): + return self.ENDING_TMPL + + + def generateReport(self, test, result): + report_attrs = self.getReportAttributes(result) + generator = 'HTMLTestRunner %s' % __version__ + stylesheet = self._generate_stylesheet() + heading = self._generate_heading(report_attrs) + report = self._generate_report(result) + ending = self._generate_ending() + # output = self.HTML_TMPL % dict( + # title = saxutils.escape(self.title), + # generator = generator, + # stylesheet = stylesheet, + # heading = heading, + # report = report, + # ending = ending, + # ) + + output = self.HTML_TMPL % dict( + title=saxutils.escape(self.title), + generator=generator, + stylesheet=stylesheet, + heading=heading, + report=report, + ending=ending, + ) + + path_file = self._create_output_file(self.outputdir, self.report_name) + with open(path_file, 'wb') as report_file: + report_file.write(output.encode('utf-8')) + #report_file.write(output) + + +############################################################################## +# Facilities for running tests from the command line +############################################################################## + +# Note: Reuse unittest.TestProgram to launch test. In the future we may +# build our own launcher to support more specific command line +# parameters like test title, CSS, etc. +class TestProgram(unittest.TestProgram): + """ + A variation of the unittest.TestProgram. Please refer to the base + class for command line parameters. + """ + def runTests(self): + # Pick HTMLTestRunner as the default test runner. + # base class's testRunner parameter is not useful because it means + # we have to instantiate HTMLTestRunner before we know self.verbosity. + if self.testRunner is None: + self.testRunner = HTMLTestRunner(verbosity=self.verbosity) + unittest.TestProgram.runTests(self) + +main = TestProgram + +############################################################################## +# Executing this module from the command line +############################################################################## + +if __name__ == "__main__": + main(module=None) diff --git a/HTMLTestRunner.pyc b/HTMLTestRunner.pyc new file mode 100644 index 0000000000000000000000000000000000000000..881ce4212d269d5443d3d26d8ce0fb0acba1b5cf GIT binary patch literal 22348 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 block as CDATA. + +Version in 0.7.1 +* Back port to Python 2.3 (Frank Horowitz). +* Fix missing scroll bars in detail log (Podi). +""" + +# TODO: color stderr +# TODO: simplify javascript using ,ore than 1 class in the class attribute? + +import datetime +import io +import sys +import time +import unittest +from xml.sax import saxutils + + +# ------------------------------------------------------------------------ +# The redirectors below are used to capture output during testing. Output +# sent to sys.stdout and sys.stderr are automatically captured. However +# in some cases sys.stdout is already cached before HTMLTestRunner is +# invoked (e.g. calling logging.basicConfig). In order to capture those +# output, use the redirectors for the cached stream. +# +# e.g. +# >>> logging.basicConfig(stream=HTMLTestRunner.stdout_redirector) +# >>> + +class OutputRedirector(object): + """ Wrapper to redirect stdout or stderr """ + def __init__(self, fp): + self.fp = fp + + def write(self, s): + self.fp.write(s) + + def writelines(self, lines): + self.fp.writelines(lines) + + def flush(self): + self.fp.flush() + +stdout_redirector = OutputRedirector(sys.stdout) +stderr_redirector = OutputRedirector(sys.stderr) + + + +# ---------------------------------------------------------------------- +# Template + +class Template_mixin(object): + """ + Define a HTML template for report customerization and generation. + + Overall structure of an HTML report + + HTML + +------------------------+ + | | + | | + | | + | STYLESHEET | + | +----------------+ | + | | | | + | +----------------+ | + | | + | | + | | + | | + | | + | HEADING | + | +----------------+ | + | | | | + | +----------------+ | + | | + | REPORT | + | +----------------+ | + | | | | + | +----------------+ | + | | + | ENDING | + | +----------------+ | + | | | | + | +----------------+ | + | | + | | + | | + +------------------------+ + """ + + STATUS = { + 0: 'pass', + 1: 'fail', + 2: 'error', + } + + DEFAULT_TITLE = 'Unit Test Report' + DEFAULT_DESCRIPTION = '' + + # ------------------------------------------------------------------------ + # HTML Template + + HTML_TMPL = r""" + + + + %(title)s + + + %(stylesheet)s + + + + +%(heading)s +%(report)s +%(ending)s + + + +""" + # variables: (title, generator, stylesheet, heading, report, ending) + + + # ------------------------------------------------------------------------ + # Stylesheet + # + # alternatively use a for external style sheet, e.g. + # + + STYLESHEET_TMPL = """ + +""" + + + + # ------------------------------------------------------------------------ + # Heading + # + + HEADING_TMPL = """
+

%(title)s

+%(parameters)s +

%(description)s

+
+ +""" # variables: (title, parameters, description) + + HEADING_ATTRIBUTE_TMPL = """

%(name)s: %(value)s

+""" # variables: (name, value) + + + + # ------------------------------------------------------------------------ + # Report + # + + REPORT_TMPL = """ +

Show +Summary +Failed +All +

+ ++++++++ + + + + + + + + +%(test_list)s + + + + + + + + +
Test Group/Test caseCountPassFailErrorView
Total%(count)s%(Pass)s%(fail)s%(error)s 
+""" # variables: (test_list, count, Pass, fail, error) + + REPORT_CLASS_TMPL = r""" + + %(desc)s + %(count)s + %(Pass)s + %(fail)s + %(error)s + Detail + +""" # variables: (style, desc, count, Pass, fail, error, cid) + + + REPORT_TEST_WITH_OUTPUT_TMPL = r""" + +
%(desc)s
+ + + + + %(status)s + + + + + + +""" # variables: (tid, Class, style, desc, status) + + + REPORT_TEST_NO_OUTPUT_TMPL = r""" + +
%(desc)s
+ %(status)s + +""" # variables: (tid, Class, style, desc, status) + + + REPORT_TEST_OUTPUT_TMPL = r""" +%(id)s: %(output)s +""" # variables: (id, output) + + + + # ------------------------------------------------------------------------ + # ENDING + # + + ENDING_TMPL = """
 
""" + +# -------------------- The end of the Template class ------------------- + + +TestResult = unittest.TestResult + +class _TestResult(TestResult): + # note: _TestResult is a pure representation of results. + # It lacks the output and reporting ability compares to unittest._TextTestResult. + + def __init__(self, verbosity=1): + TestResult.__init__(self) + self.stdout0 = None + self.stderr0 = None + self.success_count = 0 + self.failure_count = 0 + self.error_count = 0 + self.verbosity = verbosity + + # result is a list of result in 4 tuple + # ( + # result code (0: success; 1: fail; 2: error), + # TestCase object, + # Test output (byte string), + # stack trace, + # ) + self.result = [] + + + def startTest(self, test): + TestResult.startTest(self, test) + # just one buffer for both stdout and stderr + self.outputBuffer = io.StringIO() + stdout_redirector.fp = self.outputBuffer + stderr_redirector.fp = self.outputBuffer + self.stdout0 = sys.stdout + self.stderr0 = sys.stderr + sys.stdout = stdout_redirector + sys.stderr = stderr_redirector + + + def complete_output(self): + """ + Disconnect output redirection and return buffer. + Safe to call multiple times. + """ + if self.stdout0: + sys.stdout = self.stdout0 + sys.stderr = self.stderr0 + self.stdout0 = None + self.stderr0 = None + return self.outputBuffer.getvalue() + + + def stopTest(self, test): + # Usually one of addSuccess, addError or addFailure would have been called. + # But there are some path in unittest that would bypass this. + # We must disconnect stdout in stopTest(), which is guaranteed to be called. + self.complete_output() + + + def addSuccess(self, test): + self.success_count += 1 + TestResult.addSuccess(self, test) + output = self.complete_output() + self.result.append((0, test, output, '')) + if self.verbosity > 1: + sys.stderr.write('ok ') + sys.stderr.write(str(test)) + sys.stderr.write('\n') + else: + sys.stderr.write('.') + + def addError(self, test, err): + self.error_count += 1 + TestResult.addError(self, test, err) + _, _exc_str = self.errors[-1] + output = self.complete_output() + self.result.append((2, test, output, _exc_str)) + if self.verbosity > 1: + sys.stderr.write('E ') + sys.stderr.write(str(test)) + sys.stderr.write('\n') + else: + sys.stderr.write('E') + + def addFailure(self, test, err): + self.failure_count += 1 + TestResult.addFailure(self, test, err) + _, _exc_str = self.failures[-1] + output = self.complete_output() + self.result.append((1, test, output, _exc_str)) + if self.verbosity > 1: + sys.stderr.write('F ') + sys.stderr.write(str(test)) + sys.stderr.write('\n') + else: + sys.stderr.write('F') + + +class HTMLTestRunner(Template_mixin): + """ + """ + #def __init__(self, stream=sys.stdout, verbosity=1, title=None, description=None): + def __init__(self, outputdir, verbosity=1, title=None, description=None, report_name='test_report.html'): + #self.stream = self._create_output_file(outputdir, report_name) + self.outputdir = outputdir + self.report_name = report_name + self.verbosity = verbosity + if title is None: + self.title = self.DEFAULT_TITLE + else: + self.title = title + if description is None: + self.description = self.DEFAULT_DESCRIPTION + else: + self.description = description + + self.startTime = datetime.datetime.now() + + + def _create_output_file(self, output, report_name): + import os + """ Generate the report file in the given path. """ + current_dir = os.getcwd() + dir_to = os.path.join(current_dir, output) + if not os.path.exists(dir_to): + os.makedirs(dir_to) + path_file = os.path.join(dir_to, report_name) + return path_file + + + def generateReport(self, test, result): + report_attrs = self.getReportAttributes(result) + generator = 'HTMLTestRunner %s' % __version__ + stylesheet = self._generate_stylesheet() + heading = self._generate_heading(report_attrs) + report = self._generate_report(result) + ending = self._generate_ending() + # output = self.HTML_TMPL % dict( + # title = saxutils.escape(self.title), + # generator = generator, + # stylesheet = stylesheet, + # heading = heading, + # report = report, + # ending = ending, + # ) + + output = self.HTML_TMPL % dict( + title=saxutils.escape(self.title), + generator=generator, + stylesheet=stylesheet, + heading=heading, + report=report, + ending=ending, + ) + path_file = self._create_output_file(self.outputdir, self.report_name) + with open(path_file, 'w') as report_file: + report_file.write(output.encode('utf-8')) + + + def run(self, test): + "Run the given test case or test suite." + result = _TestResult(self.verbosity) + test(result) + self.stopTime = datetime.datetime.now() + self.generateReport(test, result) + # print >> sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime) + print(sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime)) + return result + + + def sortResult(self, result_list): + # unittest does not seems to run in any particular order. + # Here at least we want to group them together by class. + rmap = {} + classes = [] + for n,t,o,e in result_list: + cls = t.__class__ + if not cls in rmap: + rmap[cls] = [] + classes.append(cls) + rmap[cls].append((n,t,o,e)) + r = [(cls, rmap[cls]) for cls in classes] + return r + + + def getReportAttributes(self, result): + """ + Return report attributes as a list of (name, value). + Override this to add custom attributes. + """ + startTime = str(self.startTime)[:19] + duration = str(self.stopTime - self.startTime) + status = [] + if result.success_count: status.append('Pass %s' % result.success_count) + if result.failure_count: status.append('Failure %s' % result.failure_count) + if result.error_count: status.append('Error %s' % result.error_count ) + if status: + status = ' '.join(status) + else: + status = 'none' + return [ + ('Start Time', startTime), + ('Duration', duration), + ('Status', status), + ] + + + + + + + + def _generate_stylesheet(self): + return self.STYLESHEET_TMPL + + + def _generate_heading(self, report_attrs): + a_lines = [] + for name, value in report_attrs: + line = self.HEADING_ATTRIBUTE_TMPL % dict( + name = saxutils.escape(name), + value = saxutils.escape(value), + ) + a_lines.append(line) + heading = self.HEADING_TMPL % dict( + title = saxutils.escape(self.title), + parameters = ''.join(a_lines), + description = saxutils.escape(self.description), + ) + return heading + + + def _generate_report(self, result): + rows = [] + sortedResult = self.sortResult(result.result) + for cid, (cls, cls_results) in enumerate(sortedResult): + # subtotal for a class + np = nf = ne = 0 + for n,t,o,e in cls_results: + if n == 0: np += 1 + elif n == 1: nf += 1 + else: ne += 1 + + # format class description + if cls.__module__ == "__main__": + name = cls.__name__ + else: + name = "%s.%s" % (cls.__module__, cls.__name__) + doc = cls.__doc__ and cls.__doc__.split("\n")[0] or "" + desc = doc and '%s: %s' % (name, doc) or name + + row = self.REPORT_CLASS_TMPL % dict( + style = ne > 0 and 'errorClass' or nf > 0 and 'failClass' or 'passClass', + desc = desc, + count = np+nf+ne, + Pass = np, + fail = nf, + error = ne, + cid = 'c%s' % (cid+1), + ) + rows.append(row) + + for tid, (n,t,o,e) in enumerate(cls_results): + self._generate_report_test(rows, cid, tid, n, t, o, e) + + report = self.REPORT_TMPL % dict( + test_list = ''.join(rows), + count = str(result.success_count+result.failure_count+result.error_count), + Pass = str(result.success_count), + fail = str(result.failure_count), + error = str(result.error_count), + ) + return report + + + def _generate_report_test(self, rows, cid, tid, n, t, o, e): + # e.g. 'pt1.1', 'ft1.1', etc + has_output = bool(o or e) + tid = (n == 0 and 'p' or 'f') + 't%s.%s' % (cid+1,tid+1) + name = t.id().split('.')[-1] + doc = t.shortDescription() or "" + desc = doc and ('%s: %s' % (name, doc)) or name + tmpl = has_output and self.REPORT_TEST_WITH_OUTPUT_TMPL or self.REPORT_TEST_NO_OUTPUT_TMPL + + # o and e should be byte string because they are collected from stdout and stderr? + if isinstance(o,str): + # TODO: some problem with 'string_escape': it escape \n and mess up formating + # uo = unicode(o.encode('string_escape')) + # uo = o.decode('latin-1') + uo = e + else: + uo = o + if isinstance(e,str): + # TODO: some problem with 'string_escape': it escape \n and mess up formating + # ue = unicode(e.encode('string_escape')) + # ue = e.decode('latin-1') + ue = e + else: + ue = e + + script = self.REPORT_TEST_OUTPUT_TMPL % dict( + id = tid, + output = saxutils.escape(str(uo)+ue), + ) + + row = tmpl % dict( + tid = tid, + Class = (n == 0 and 'hiddenRow' or 'none'), + style = n == 2 and 'errorCase' or (n == 1 and 'failCase' or 'none'), + desc = desc, + script = script, + status = self.STATUS[n], + ) + rows.append(row) + if not has_output: + return + + def _generate_ending(self): + return self.ENDING_TMPL + + +############################################################################## +# Facilities for running tests from the command line +############################################################################## + +# Note: Reuse unittest.TestProgram to launch test. In the future we may +# build our own launcher to support more specific command line +# parameters like test title, CSS, etc. +class TestProgram(unittest.TestProgram): + """ + A variation of the unittest.TestProgram. Please refer to the base + class for command line parameters. + """ + def runTests(self): + # Pick HTMLTestRunner as the default test runner. + # base class's testRunner parameter is not useful because it means + # we have to instantiate HTMLTestRunner before we know self.verbosity. + if self.testRunner is None: + self.testRunner = HTMLTestRunner(verbosity=self.verbosity) + unittest.TestProgram.runTests(self) + +main = TestProgram + +############################################################################## +# Executing this module from the command line +############################################################################## + +if __name__ == "__main__": + main(module=None) diff --git a/README b/README new file mode 100644 index 0000000..ece6ee6 --- /dev/null +++ b/README @@ -0,0 +1 @@ +API test scripts about APIs in Pad3.o diff --git a/__pycache__/HTMLTestRunner.cpython-36.pyc b/__pycache__/HTMLTestRunner.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..14f81467dca4655f36e2d3a06c3e74ccca7b1f43 GIT binary patch literal 19924 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 literal 0 HcmV?d00001 diff --git a/__pycache__/HTMLTestRunner_bak.cpython-36.pyc b/__pycache__/HTMLTestRunner_bak.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4f77db6698b38d28cc47d7603f1501efa78f7d48 GIT binary patch literal 19927 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%0A6CqiytIj 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 ISedZo4;wYYlmGw# literal 0 HcmV?d00001 diff --git a/configParse.py b/configParse.py new file mode 100644 index 0000000..74ecba2 --- /dev/null +++ b/configParse.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import configparser +import pymysql.cursors +import os + +base_dir = str(os.path.dirname(os.path.dirname(__file__))) +config_dir = base_dir.replace('\\', '/') +config_path = config_dir + '/config.ini' + +cp = configparser.ConfigParser() +cp.read(config_path) +DB_host = cp.get('mysqlconf', 'host') +DB_port = cp.get('mysqlconf', 'port') +DB_username = cp.get('mysqlconf', 'user') +DB_password = cp.get('mysqlconf', 'password') +DB_dbName = cp.get('mysqlconf', 'db_name') + +userPhone = cp.get('userinfo', 'userPhone') +deviceNumber = cp.get('userinfo','deviceNumber') +admin_host = 'http://admin.test.hjx.com/' +boss_host = 'http://boss.test.hjx.com/' \ No newline at end of file diff --git a/data_fixture/__pycache__/config_data.cpython-36.pyc b/data_fixture/__pycache__/config_data.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..07ea680c59ea16e3e95eed4fd0b28936fd83da6d GIT binary patch literal 1748 zcmaJ?%Wm6N5Tz|Cl5EMg!Aci1>VF=?COp$dO zry+t7h+-6Ga0X^^7UpmcVi3GA%1<>z19|dGt8hH1~R|E~DX| z(Hfz3O5OAR83y7+)R6vPMk{|W=~ZCQGplhCw%WCw>hMb?T(3C-R6h7opjo(?Hc>tR?~9YOOxK& zMw9NgcTEik?N_z7L2Ip+Ni_PN-m+;n#pDyILV_*QS}KKlp;%0?+c`{R(%V~!qMlAA z@=T$SE@aqjCZ#9at%u!3@~j-b`1RnkCr3X$J^JR8gBRbv{_d;Szkl70JIwR%|N8XH zgU_G*`PRp-OAg)-J27fWRuq^Tm>gdbB?t{{rOvrlO;8}{BvVBm;;x~J zQdzE4H-)+Y(IIwUcu)s|iw_6y0Cqh5KSzP^CttM0O=dM0E})L@HeQjkhwc zIzB!yGt{|$Y*a~(AOszWW1Qm12|nf=V_`I|E)OEcQBvS(t-Eu4G=p>J`cb7(Qn_+j z6)W7j&|e(7HDO(pCDm!Q%D|a0+n+zB7I~sQ1N11B@`fyLlKbjaz5&^1REK;Wj;DV( zxXs~S`wN36YekUuKp8b$T+LdA0YFjd-(>4kDv}dM9KOeVwv0v literal 0 HcmV?d00001 diff --git a/data_fixture/__pycache__/create_testdata.cpython-36.pyc b/data_fixture/__pycache__/create_testdata.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ad493ea130f862a6323ba414eeaebcc9757f0b14 GIT binary patch literal 12842 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 literal 0 HcmV?d00001 diff --git a/data_fixture/__pycache__/mysql_db.cpython-36.pyc b/data_fixture/__pycache__/mysql_db.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..272c9152a0ffe9789fe2f006c2016c3d1e6e7fde GIT binary patch literal 2948 zcmbtWTW=f36`q;BilSxNO>C=C(ybH2B9KZ6az)@6wL`@TP*aL1N9m%$V$E4u+$_1& z>@u%zcWiwg5bO~OU~K3?VQ_p&Y6!cU244e^g;M?nX&(} zbB~4oU(t$BK_rtrV`2T~p)g}Bw4{($W)GauC8mvN#12G_a(k%otGT6 z#r1M8A0GCfL^3Yp9<7`{3tnGiCSf6$3_Q3L&lz}F(#G4CtJ0O;a~?Xw_D78Jx73jD~l=eq)QT&oCslDD&tcs)zmwRJX&1ew+cntDN?PqqP@|{;G{Ut@OeHQCOw?nhMl$7z8`(F)7>|n z-JQLCy^NVh-R-^3y@%UouzRoDJ=oc6hhELF2pjEwul&kz*Nypk{d}k`un$*vMv00` zjN@#Z#L>=3^@m^>t0zTEXuC+VL(P-_Fm)Zmy}G;g2pSe!#ZjD3vaQ_{QgE=V@)Tkg zTk)vBpA_X5!6G{BKP|^9*)qCB^6}>AMEgATEl6@RS?Dn_qlC;f?pMH@Cmfq zJl)qLo6tkRT0%2!{{WqerEvRFOUlBY>;TqdD^n3T{Y%UYItlXh4zzxpG3M(vv1FrUI8Q1ur2g%84blQ+08CQA^y zUhDL1TEIga7BU}UAbH9t(4I5M3EA6#*^E!^%2FGZE%|j;S=ZUrmUe}{bTGCtcA%@# z3%a_Mo7$B_@I=ph)gUfgmKK{IXzQosL_0sn**LjiqE}0I zo+QKM=}6uE3-KZc+HCUn!amXFohgslpK%a zEWCPdW;`@=dI`>t%)DC1k>+sis-zfak;5i5IP4L zKuEeZbfhIj%Ij)taR$}A^U1%q(S6JoDH<12shy~i}9j~uiB*3C-t)5jax@erk z2GFy>#-e6j)TyphXZh)ZhqYG=5B2fHEqQ7g(xKFxN#hPGfxHgVlV0r`4d+PdPY>bR&uexf~<%Bi)Q5%ER@FqFaG_ zo5*bx!)At(7KK)#?h6L5DFRUZFj;ZkS{D!qT oza^;#zSbfyG*cFx*d#*7zK);v@6__&r5)xP;NuSCi{|D30Vz* 7th day of this month , should create 8 records to cover this week ,this month, this year + for i in range(0, 8): + day_delta = timedelta(days=i) + days.append(str(time.mktime((today - day_delta).timetuple())).split('.')[0]) + else: # create january data to cover this year + for i in range(0, 8): + day_delta = timedelta(days=i) + days.append(str(time.mktime((today - day_delta).timetuple())).split('.')[0]) + days.append(str(time.mktime(date(today.year, 1, 1).timetuple())).split('.')[0]) + + + app_rec_to_insert = [] + for day in days: + for i in range(0, 12): + time_end_1 = {'time_end': int(day) + 28800 + i * 1000, 'id':str(uuid.uuid4()).replace('-', '')} + time_end_2 = {'time_end': int(day) + 29800 + i * 500, 'id':str(uuid.uuid4()).replace('-', '')} + study_app = study_apps[i].copy() + study_app.update(time_end_1) + game_app = game_apps[i].copy() + game_app.update(time_end_2) + app_rec_to_insert.append(study_app) + app_rec_to_insert.append(game_app) + + for rec in app_rec_to_insert: + db.insert('analytics.app_record', rec) + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data_fixture/mysql_db.py b/data_fixture/mysql_db.py new file mode 100644 index 0000000..2e22b0f --- /dev/null +++ b/data_fixture/mysql_db.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import configparser +import pymysql.cursors +import os + +from . import config_data as Data +# +# base_dir = str(os.path.dirname(os.path.dirname(__file__))) +# config_dir = base_dir.replace('\\', '/') +# config_path = config_dir + '/config.ini' +# +# cp = configparser.ConfigParser() +# cp.read(config_path) +# DB_host = cp.get('mysqlconf', 'host') +# DB_port = cp.get('mysqlconf', 'port') +# DB_username = cp.get('mysqlconf', 'user') +# DB_password = cp.get('mysqlconf', 'password') +# DB_dbName = cp.get('mysqlconf', 'db_name') + + +class DB: + + def __init__ (self): + try: + self.connection = pymysql.connect(host=Data.DB_HOST, + port=Data.DB_PORT, + user=Data.DB_USERNAME, + password=Data.DB_PASSWORD, + charset='utf8mb4', + cursorclass=pymysql.cursors.DictCursor + ) + except pymysql.err.OperationalError as e: + print ("MySql error %d: %s" % (e.args[0], e.args[1])) + + def select(self, sql): + with self.connection.cursor() as cursor: + if cursor.execute(sql): + return cursor.fetchall() + else: + return None + + def select_(self, tabel_name, where_data_equal, where_data_unequal = None ): + sql_where = ' and '.join("{} = '{}' ".format(key, value) for (key, value) in where_data_equal.items()) + if where_data_unequal: + sql_where = sql_where + ' and ' + where_data_unequal + sql = 'select count(1) from ' + tabel_name + ' where ' + sql_where + with self.connection.cursor() as cursor: + cursor.execute(sql) + result = cursor.fetchone() + return result['count(1)'] + + + def insert(self, table_name, table_data): + for key in table_data: + table_data[key] = " '" + str(table_data[key]) + "'" + key = ','.join(table_data.keys()) + value = ','.join(table_data.values()) + real_sql = 'INSERT INTO ' + table_name + " (" + key + " ) VALUES ( "\ + + value + " )" + with self.connection.cursor() as cursor: + cursor.execute(real_sql) + self.connection.commit() + + def update(self, table_name, set_data, where_data): + sql_set = ','.join("{}='{}'".format(key, value) for (key, value) in set_data.items()) + sql_where = ' and '.join("{}='{}'".format(key, value) for (key, value) in where_data.items()) + print(sql_set, sql_where) + real_sql = "UPDATE " + table_name + " SET " + sql_set + " WHERE " + sql_where + + with self.connection.cursor() as cursor: + cursor.execute(real_sql) + self.connection.commit() + + + def update_(self, sql): + with self.connection.cursor() as cursor: + cursor.execute(sql) + self.connection.commit() + + + def close(self): + self.connection.close() + + + diff --git a/data_fixture/test_verify.py b/data_fixture/test_verify.py new file mode 100644 index 0000000..ba00dc3 --- /dev/null +++ b/data_fixture/test_verify.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +from data_fixture.mysql_db import DB +from data_fixture import config_data as Data +from datetime import datetime +import time +from data_fixture.config_data import HOST_BOSS +import requests + + diff --git a/report/test_report.html b/report/test_report.html new file mode 100644 index 0000000..109b06c --- /dev/null +++ b/report/test_report.html @@ -0,0 +1,303 @@ + + + + + Unit Test Report + + + + + + + + + +
+

Unit Test Report

+

Start Time: 2018-01-08 18:05:31

+

Duration: 0:00:02.208474

+

Status: Pass 6

+ +

+
+ + + +

Show +Summary +Failed +All +

+ ++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Test Group/Test caseCountPassFailErrorView
subject_sync.ClassNameVideo2200Detail
test_ClassNameVideo_noData
pass
test_ClassNameVideo_success
pass
subject_sync.ConsolidationExercise1100Detail
test_ConsolidationExercise_success
pass
subject_sync.PointVideo2200Detail
test_PointVideo_noData
pass
test_PointVideo_success
pass
subject_sync.SubjectTest1100Detail
test_SubjectTest_success
pass
Total6600 
+ +
 
+ + + diff --git a/run_test.py b/run_test.py new file mode 100644 index 0000000..1487a48 --- /dev/null +++ b/run_test.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import HTMLTestRunner +from test_cases import sub_account + +from test_suites import test_elecCard +from test_cases import register +from test_cases import personal_info +from test_cases import parent_space +from test_cases import app_record_statistic +from test_cases import subject_sync + +start_dir = './test_cases' +suite_run = unittest.TestSuite() +suite_run = unittest.defaultTestLoader.discover(start_dir=start_dir, pattern='subject_sync.py') + + +#suite_run.addTest(app_record_statistic.AppRecordEveryday('test_getAppRecordEveryday_success')) + +#suite_run.addTest(app_record_statistic.AppRecordReset('test_AppRecordReset_success')) +#suite_run.addTest(parent_space.ParentSpaceNewPassword('test_ParentSpaceNewPassword_success')) +#suite_run.addTest(parent_space.ParentSpaceNewPassword('test_ParentSpaceNewPassword_authCodeError')) +runner = HTMLTestRunner.HTMLTestRunner(outputdir='report') + +if __name__ == '__main__': + + runner.run(suite_run) + + diff --git a/run_test.pyc b/run_test.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4c4acac4c66583a2cf93194f1c8b91c6ae936415 GIT binary patch literal 811 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
    CHD93l_lhQ@-0{Bau(w1j$j| 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 literal 0 HcmV?d00001 diff --git a/test_cases/1.png b/test_cases/1.png new file mode 100644 index 0000000000000000000000000000000000000000..35f61116ecea9d234484e363d498e743cfc6247f GIT binary patch literal 220825 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
      CHD93l_lhQ@-0{Bau(w1j$j| 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 literal 0 HcmV?d00001 diff --git a/test_cases/__pycache__/app_record_statistic.cpython-36.pyc b/test_cases/__pycache__/app_record_statistic.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6d088e0d6606a503cb50c0afe32d2a9df1c1d2e8 GIT binary patch literal 10486 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 literal 0 HcmV?d00001 diff --git a/test_cases/__pycache__/debugggggg.cpython-36.pyc b/test_cases/__pycache__/debugggggg.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..79bd8967641e0e8bc6f2bc02e3194825a171c193 GIT binary patch literal 2537 zcmbVO>u=Lm6t|t1lRhY=4_e;ur31H3X-lOEO?yZPBviBqQlu?%bG_85W2e_Pv{5p3 z3l)WK&>>OA=p-Z<9mKYUBy4&dwqV#=bn4d z&*`bF3%&ewFxtM8<9_2dG!OLOgv*ow2uFC0i*iIDo(o)*Ctl)%yP$Z8e?*`iia-KH z%nLl&y~l-vW#Dk9;{x8Gg;uY(;cos4KzQ_oUb0-4C;qtr@<|Y8LZoKSM`}qOsfW=f zHfkW7Nh6H5uu&6fCN0RtQNouK#;C=SRKQ1lImwviXoW1GZ{ob9tpJ|O7Dan*oP1Y0AyLv)X z&EdBUW5f|6y$;`9CO{4c98pfEW4fGDoB;OHDsgJ!vZW*pIv#^T&@^lsSFjth)RYo4 z(~5360ozn4PSz3SoC?o%J2j+GdlPtdpHH~I?^#uKng6Fp>9ARJR?kbuXdI6Vu$!qb@^FxMqy zoL5!T_{5Sd+kl@V^!8J*=E``g)QL1e2@dHi{)oec1xI9=QFI7IC2UEMSs#VWD~`vs zsN=P5h|-66)Co`}t;uo4@!M$vsdhY?qK88iL!mVQPKc!`1{-2JeA407)!f4yV%@MM zm_&T)2&t4KXqqFK<^zr%0Pd^fogcu~n4RXZY-F^~!SVR8OjCo@NGfs5?3B~$`-*9G zS^%-QY$|3aQHJaUYf^gLX^v9`fh;szzSL*{+}PVn=!yvX}ETp^)>Z{YXB zOo;cwQ+f#O)(fx>23z1_1^6Rm@vjA#;B%~qSrJyt63P*Z(M#&q3$-4Kk`?6o%ofrF ztj(l(eWnGhhXO=a<2q|Q*}+&-gVYKvY*Wy zSf4pa4w2Wub9ikgQJeFS4)QuVobcqlV~bfY2*v%JZ|pV*#StPg;kcIbTRav&>1>7a zCtXZ11k023GQseXZV~~(=mEh9tXdvrmc9RCDP{$71f(UH4JQ5B07{D$$OcItla)}V zm#fKovVO3t&DMgIh*mTFXyaK#VO4DU|EJhctQU%MPQ3u(z(3Y|_4KpKcNeb~ovCK?Tvg0gZ)TeJQ6qaUJ zu782cV@ja zzE@bjz0q@~5iN&p&4$c@TgxysyB@61oGC6X6{oI#*e4y6`YUE@=^7nH$INVCz`gaP zcxSpeH-SMi5vKzK=M{BSmB=|#j({(_5x~8;P`dW{%9RBOwD5Ggcw_Rxr|HBRZtLw6=$x^=O-GN#n$l{945)a4OH8dZl4!|`-?b(LQMFY51RE$WZ37WMbA zRuN{*eN~t##zj$e!UAo=KITaswg7$y394wcNLygm@u<2*ThRzVsI(2C9bp^7c7SkQ z^?1@9FyRC-PZfdo5_#NoJb-i;5_aSB%C{2rIzsp0>^=k(P)A&&GQF-UaNC<&Cckmq^WTAG8JnhF9im@10QY;qr_xASnb#+B+PnST8$($gL3341FEK{a0|;9rGUY(wby(V;AU@r{&0Y)v_irEcPvTolAM@r20#0hs>t AJ^%m! literal 0 HcmV?d00001 diff --git a/test_cases/__pycache__/eleccard_check.cpython-36.pyc b/test_cases/__pycache__/eleccard_check.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5024852e93cf660606a32147befe5bcad39e3949 GIT binary patch literal 2879 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 z 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 literal 0 HcmV?d00001 diff --git a/test_cases/__pycache__/press.cpython-36.pyc b/test_cases/__pycache__/press.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2288608d59a1149597531ee9d635c01d9e444f9d GIT binary patch literal 3613 zcmcJSTW=dh6oB{U-SyhJHob(Fk|J&{BnFB=AV8%}RU#p`B8iYJ!D{1~#OtoT&dgeA zEJv#9iWVrKO0=j_BzUN(Dp9rN0abb6e=x7)*1y0L=Zu}iah$565NpoP&g{&bIdi@< zC&#+FoIeYr*)O{k&w%=IDEtBlq7XGuvW=&jRpDI=w4$EXRczA(qZrGYvTi`# z%G$CX3*tp5>!=EK>Pj|oS|KK}E-A#KN+DU-vt7_)lQ^`*n=ReY;*bQiB$_QfL>*UB z$w#1tl1Zr|{_&ad3HQXA@o{+R$ua6h)Qu>Qh!=U#l*ompX@ACTzG|Z+h38IwBY?xOn+7J%B3Ok}68x7}5d*E$j>Al;Q z-uPm3b@Zzk6lu0Epn}Ht)ddxe4^J%uT|ghLrq(nP`&M7jYkEPiqhSqbk3lhrIS5`v z>^k@#yql3FTjPUDT_x5zgE)1qxtl~rm>=bGv>a9Sqv@mB1g}h?MKfNJR!mrb_4@sl zyT8DetvvMzoPaRP9`lOuqBW z*F}XJJuCs!GjxCUEDChx7J+WU(8@hfI95Ot-PUE>Q-j$HTR~_foMWZwaMR1S!TAg< zy9H;Y74*m`#5VmMK~?`=ksqNS{1{0f5?VUs)Kk&zc-R^{G2H z+8G#WtRrX%q(Fi5sP1c@=wHCf@QkHL?XoN$&x=qt5FOmH=nhQLRW~uc2rnC$BA$rq zq6VmfDG|JFsKz9!CbT1zW;?0`AYCxd57mrO7g5jq+`YvRF;5dee%yki8yECR#&Q1qj~*tFBk4Mf=hbPB5( z5@a}7zjt@_#^o%;KOm@b5c*fH{&n9`>sRY5w{AnQSh>8k_SKcOTYpp!wp((j zm4Akp3`5Jay(kb!=~HY!)-VRJ10Yh?7U~R_WQR~l#t4SNp75Q-;&9Nikf-GJNx$g%CIA>T7u2Ak3+ z;JouC+}FZ(MNZYciseb{LJV&B9o$XxJ{|0!#Q#O=doAl8>a^|-SP@jzSl+2up@Ogy z9S~I|t}>y4+zYZVC^nS%qSJ=2)4XZh@l61nNz#Q7?lM<5%!N0z71@P2>8TlY4My~C zV%wLI#8!`Z<#OQXyvPqr>GQ*Lb92MfAuA3;E<{VYkWhqI0-ih>mLgh;h9~CBw1ViY zJb1ADaB=ne&Gn1FZPF)uRv-Md{>}HDdX|@#R_|YH??KOAxpf0EzkU-~UVix9+Rs0% z-T8fMS|qSB?b_{Y@X6}e7giVVZT6=e_A-1S;(%fiGCMXetX$qNQBH+5<%dByGcV#Z zG=z{;&O;{%?&r9$XlVvg!Muo=+o z0=hn7ui>C!6eB3oC|*bL28uUP97FLIi0Xis3t0(=j>z#czElr)aJSZo=CnmLVU$BK z0A3btAx&6hN~YxyU1~RQmv?=BPW~mWHae{cNp~ z)pY8q4tLnie;xK-1}~yGq&UxK1D8xOgr8xo5;mqNC*fZMnO(`~%TSjVyUO&ek-NX& ZNa#Mq1vuW6m?Pp{0YA+&`uqC#{R1`dd>Q}% literal 0 HcmV?d00001 diff --git a/test_cases/__pycache__/region_grade_school.cpython-36.pyc b/test_cases/__pycache__/region_grade_school.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..973a24b6bfad27185dad2b5e07e8c05627a7ae18 GIT binary patch literal 4297 zcmd5<&2!sC6xT|!Bs&TDXz2$Z#gqc$G82W#48x%?fs_dy7`IH)iw|goR&i_`+ufBZ z)wrkh%74ItD<}RRT{-n%;Kc8(w2IQ$2Ab&%p3z$SR=aQaz2EP>x7#Z#jX!?-v~y$0 zF#a?uKO65mcw~x(8=MV{PX5n241IH89$OuY8G8n|xc$uFc5L+R6RT5$q{bacoI>J2 z;&KlXuaLNq)OiDvMj`PaS>nr(EEkeGXZuEL z;E}h`#0G7yV{*pLXGX`$x7M-q4RvbV#gbmOv==82#OSBqFp49FdGw=yT5K1Od<{*4 zQ(rZvMt~(T&1|P@{wVDYyZ*SCD_f?ZDVg^}DC1xv2H2-9*5&|G|^!C=|!g-H)S0`r){D5X;0*&;$|IkiLk!z0ok}ijc>FjE+X5!RGi$R+Dk^ zaNMB1kw$~1>y<-ns?kM9nHqg|!WdkLqp)_%%xYuN8zz|}VmTQkEhcJMR_!`(Ty!%p zi9>OB^mw>}p4NQ1s#$+fD!1?@p-0*A059Z>9(&3XYysOar;J;_m`}~A*|$!}zBZ&a zJT|wlE9{&ASLi#5tEBFA*xfyfVKN~zM`*IM_7V{C|VQB%b8{#T8 zgwaYvE*Ip#Ivz=b9`h{EQnCo$@<$ll!Si2OSI0qidr2>rC05RG?hUM0;hYI%nA}2Z zDbU*Obfw^5q*m!T+uK|CW%U2?)>g|_WXwGU?-7sg@s5qJpUj50GRJi~2A$P_y&aaW zmfL&@Rtd740>~VVWcwRuBIb6^ImdT}y ze2P{To33aU?J78E4!w&{C7pvf)X*$yR_&Z~=~RyAFUb;MiPS;3Z1s%%jX>NpX7w}>hq>5~>zp%kPy z`KrjWMLLU=M~SD@_kW~|AZk~*qOy-NE23V`7EgDJ+{=?4r)~ zRjs9KITfAe1aHcopV7_>JW{I26}~F;?^Lu=swlLb!@h;@%2Yv`?_RQ|v=DmL2`;)|f4Td)dYcYeG-4fT~OX(ndN2%jHY z!)}+1LcY*dQcBUiG)*4e&rVs0)DN)IOr+kzz#TjqsZt2*^{W>L5$iK{Zte5y11B$Dv9HFn0iRw}iPj7v^SOwzQxX z*F1uJ9^K!kH!57y_1pth*cXwTCjA=%RBE01k^8C+zXf764d`xFUKUKiN&) literal 0 HcmV?d00001 diff --git a/test_cases/__pycache__/register.cpython-36.pyc b/test_cases/__pycache__/register.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ecf65eed86b9b03ff066d5f57955dfde5e1661ab GIT binary patch literal 10327 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 literal 0 HcmV?d00001 diff --git a/test_cases/__pycache__/sub_account.cpython-36.pyc b/test_cases/__pycache__/sub_account.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..978b1f9be20248f7026148387169db03284b5c8b GIT binary patch literal 5270 zcmcIoTXWmS6~>JK2$GU5*^=#~Y22o5=vHFfq-i@%lSrgS(M(Oby0kNRC_0Q~UXEOC)$Wy|BZ2#p3LJ&-uP{mhaYT&iQ4_ zjh7VVze?d}p!_jX_)la^VQOD-)3@rX_}2Q`KzDVOWP0Bilw4Dm4U{d{mgQ2vJaAk` zmeqd6tpv`6;#Rj6W-{w@g;{~pt6k{s0wgvoLsHHpi;y_10!by4+<>IYYLL`2$xWv2 zEA@rvSfA3atD^kL?*4(dxx2rQkHroT{3!6EAdHwF`4Ck)qv3J)#LGUl)@Fyg=06RE zkCDQ+kOc~D($$#Cw9ge+XF42j0vYgh3Ue{CHz;t9{_@w6Jj_4Eo3aQg{`Eefd#?<_R0&sXt2k zjmJ+rr#>G%=A&NFiNc0I?$YQDIybL_dC@XH^89p%>*J@Q6b8}Z_y%o_Y(!BVHCdin z!@6uS|1=iRBf?4a)X52`?YbsPW8NJ`!sJ01_oKSXD`+TJoMttA3OfpX-Wr_^Z{aJX zvr*J!Wp?ho$z*z3WEn{+;~WLjDbp{tXKI9HAZZMG#al-*kf>}j^U{8%MOM$oV$0|1 zxyG!&>(BIay$2(PDl3pzqgro)Ocy=Wu6m)7(Ov))REJby)w|M=NhZ}@YbW>p@wngZ z_)&K>Y<#wMc6PRQJmP~jC^#5)Ml4{7{-E)ot|isxXcz^IZRU&r z{Oy1L{s%N8)c5PQYma@7c00^1bqD@QAdI0u2wdxg`z(Oe4m+o#QJ+dYIKjL-OjKF$ zX}1%!qrvo0;wqoOFMlX_kDoD4o$hV4$l z@a7ihBQDG^@}oGcFLGKocaXWY{liUfquKO!9&K!Ixy$+Ie)E&v-9Nx)y@ylb-q!Zc zZd(e)N^9#+JIyVxefVf|YtL&Q?t7a%?Us8xA0cbp-gva-JrvmMlNfd!y2f}EM%=>W z!svygAt&<{6+gs2qOB*f-xn4;l4Kz)paoFy>PBjVE3{;r29U^7`BkgDC$TcKc`uBi zt1w(eUr7Lj5(AHhhu((jXiJd2t|o6^wO;^l?qKb@DQwRp&3c}2JZ~^!ai7Xn&!au0 zHJl*EZ&LOn$_Vv^jDW;VWQ#~46>QZuY+cH}Jt1xf(bNVe7$o~397+uS1%)CZMtaY< zP%hM7iEw$L0b6FI&5>G>-77~{vX0d{22^2bWa^HYLIVn^c_BAt;NjyZF5a;ZSbBVKr_EKpK1tQL_TA)oLQK={> zq$DZQ$SBg36lpR~GxM(oD_>|CK{{=YP(;ZnP?$tDJB;6k ztgdkaqcA}{{vhP!S*0?Q<&&b>rPRX-e94{J8ltnbx?Y*8ioZr9y-s86XfKU||A1t~ z6Z{RTa8j~3;Bg>y5Ot9rgoR$j4*Wi~pCV3rt&|^T){*nWduSd~b49h)1(<=O-U1_R z7k9HR>1A$rFarNE&G;5&KcQ?2ej2;56uBq~{-2_vj+BGn0{BVx?ZMv)`mX~2` z0V~)SoLi#frg#T2Zq^?0%oMaH>PrleWo70}n6^@Yt0>Up4$IKW8(7Hv2tsNsS%xB~ zR+C}30PQQ)dwaWk^)e?rl8EK+P>Edo6~yu%lI%@nMX2(3NqRj@XJ*S`x{W>)m^u=s z@&%}pU!C~Y zPw|mMm4HehMUt1!O9P^@xaQj@#5>0k<%4Mgv&<}%xV0j^E=c;HYT*rhj_9Yo^?B?2cx+N zpIa*dUQHE0;pM4^{wjDcO(XXy-i32^8X#7q5TF1!>7w6|KK6yB=Jn7O_JXoO1lNu=f!T}+aEzUs0No{#5DPN{DxD3ma`k5cR-vt#sb9KIW=Zwy z%+A!GhGAu>U%!UEbG1%1&wqzS6%}9Cr)D98ujIAq#ZZ>y#n4Nye967+3?9q7X+|>z ze!s4PG=RC$**Dfb{{UOLs`UFsrOzxf*ZVPgg)7K%y{B3y3$RJ^@4Q6wa|dkKt?L7} z-_sh2@e2!`x`W@M;*Urnks+>Za0hmkleE4h?0DFXXgks+x_8LNz2oj@QOtw&!rxvp zIC87SYOZ4ld6nUGLzAJ9d%M_Teeg7V()ZXACzDMBD)OzuKERAk{6{43jxvUn9!joi f-X?_oL3(HXkfxF+i=C*|?6EadU%Iz+dujRqhvbf{ literal 0 HcmV?d00001 diff --git a/test_cases/__pycache__/subject_sync.cpython-36.pyc b/test_cases/__pycache__/subject_sync.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..31cd954d3424990d040e2a1ce779893be8d43d10 GIT binary patch literal 4965 zcmd5=>u(cB5Wko0^CJ)PAV7cyN?S}(Txcu!fZ7y@3KBA?4*hVgbh`L1;Ph;Vy*o-Q zBSlRpAfQrPfha<)P!SZV1X@wGBvSi-?AOM2_!s)AGkboVlgk4_rP{i^-PzsQ*`1l+ z&fMEAEs=ZsQ_8+Jj{BSQ{3NIkz++8Ap>sNKa*F%r6&~7xDP%=O%u0%s4JZK~`$RLC z4Jk6KOHdCh5mpbF(QHhKu{v+IC@nBHXtrkCls29-Vw0TG{voG_ba{%?WrG`CHz_I| zKnd#+phT*aPM}2f7*JwWN*7RC^j4s>Rw>;&pW@7_85e2z$nn&WdhmEEMP*h^ z4Si6peKeSg^Rz8Z49zxF+puh1vo#<^)A`&;=9F4(3WpB@QG%9{Mz*z|0F?oFtldx; z93F}y=)5jWaf+ymx&&`Y59mR72i(mmK|KuOMQH0GQ?sn3mNh=k=te%x0}K4&8~GlB z$7+SbhJ)|niku4EVWyBQv?tQFxrwtlIW7>?6_tlI%TOI+qO_J_jy&K<3_AW9NSw3` zVkNB8TE1W=PK>8dYb1MuIh_AI*9EQGGCd2H zsg0?xB*NeTJZz-_sGtJy@b$oL={#?9qkNGY6^gtbye6C%io&QkiN`4cH2{yKhc<%E z>ETHctrL}#bift3%Ka;)yALY2rpgl&rN4f2x`8$~GgE&2b@}>t^I!a0x;Rt0e5rEx zPbUaH^N${uZ(MXjP~BI0`lK>*KQ7^p&e^DA8Wg4Rwtu;_#Wj27*Zpc!Q5!RiWqe%s9D@my;PB6wnC0~V+ovJr~9 zYW9*|XjWB1He>%5EYM{=Zn0^ZWniSAKH{s;hbw3@9-^|U=D-kDl}1!Go7Wu^>oHYD zi*b7hA`wBaAX~BM!=fQ4tDz5*Fcf%rmJEf=%Od>4jG6{Q{kIn6jGV}4a`tnhW-Kv= z^O_KoDa9X+*p7FDz%?LhZ!EiZtYb%+@Nn<+aQB5c#25x~2cgn{I6Zhf&;)X!B|uIF zkb}##4sy|#19Hy$AkO@wC*_-80sK9?d13z1?7Q_g_+VxB+w%8Q#p3+*^!)S;i~(9{ z`qtdj%cXCwmM(o+`DHd9@bfo-Ow^ax?Z|pqtgwaoL*u*_f})?#kxejjb?(-)1pB?f z!9vrnVV}TP(QkW078m&%?V4;&sP}(W<#yOxU3E*U(qCKTHJI$xl?#!Z7ar!y@JL<( zPODSZdVlT*fPufJwly@fNKB`JPh(G77gfo9h+}p;Rk&?pyN$=ywDdRNcD$4 z>{&Tzgm^@z(UcpG4Z&4kH>FiXimkOcj)is!h!YWbS3ga5 z<{!T2STl9k9og3bEiU^7A2jIZV(e0*5jPzhB91{t)5xtD|8HMehGE#Bg_+92*rbau z?Dv(vnxc7ay5<(OjV)HFYF&&UT2= z52~qsad9sxv`Y3_Ly36@61))L>k0d2GX%^q-6CkdRKhCl_Kxn)j$3C;RUampm{ZBl zKrSxB2m@zu$!B~4?+3;HcRCLZo2dy-c%N*d4O7c7awDP PnU4uUv7@(ROGoFw5Xb?i literal 0 HcmV?d00001 diff --git a/test_cases/app_record_statistic.py b/test_cases/app_record_statistic.py new file mode 100644 index 0000000..2b3196b --- /dev/null +++ b/test_cases/app_record_statistic.py @@ -0,0 +1,259 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import requests +from data_fixture.config_data import HOST_BOSS, HOST_STA +from data_fixture import create_testdata as CreateTestData +from data_fixture import config_data as Data +from data_fixture.mysql_db import DB +import time +from datetime import date + +db_test = DB() + + +#提交app使用记录 +class AppRecordSave(unittest.TestCase): + def setUp(self): + self.base_url = HOST_STA + '/app/record/save' + + def tearDown(self): + print(self.result) + + def test_AppRecordSave_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'appName': '学科同步', + 'appPid': 'com.hjx.synsubject', + 'timeSpent': 1088, + 'userId': Data.USER_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND} + send_time = str(time.time()).split('.')[0] + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'test_AppRecordSave_success Error') + where = {'app_name': '学科同步', + 'app_pid': 'com.hjx.synsubject', + 'time_spent': 1088, + 'user_id': Data.USER_ID, + 'device_number': Data.DEVICE_NUMBER_CUS_BIND} + where_2 = " time_end >= {} ".format(send_time) + self.assertTrue(db_test.select_('analytics.app_record', where, where_2) >= 1, 'test_AppRecordSave_success data Error') + + +# 按时间段获取app使用统计 +class AppRecordStats(unittest.TestCase): + def setUp(self): + self.base_url = HOST_STA + '/app/record/stats' + now = int(str(time.time()).split('.')[0]) + CreateTestData.create_app_use_record(now, Data.USER_ID, Data.DEVICE_NUMBER_CUS_BIND) + + def tearDown(self): + pass + + def test_getAppRecordStats_all_success(self): + getData = {'userId': Data.USER_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'type': 'all'} + r = requests.get(self.base_url, params=getData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'test_getAppRecordStats_all_success Error') + self.assertTrue(self.result_1['data']['gameTime'] > 0) + self.assertTrue(self.result_1['data']['studyTime'] > 0) + + def test_getAppRecordStats_year_success(self): + getData = {'userId': Data.USER_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'type': 'year'} + r = requests.get(self.base_url, params=getData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'test_getAppRecordStats_year_success Error') + self.assertTrue(self.result_2['data']['gameTime'] > 0) + self.assertTrue(self.result_2['data']['studyTime'] > 0) + + def test_getAppRecordStats_month_success(self): + getData = {'userId': Data.USER_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'type': 'month'} + r = requests.get(self.base_url, params=getData) + self.result_3 = r.json() + self.assertEqual(self.result_3['status'], 1, 'test_getAppRecordStats_month_success Error') + self.assertTrue(self.result_3['data']['gameTime'] > 0) + self.assertTrue(self.result_3['data']['studyTime'] > 0) + + def test_getAppRecordStats_week_success(self): + getData = {'userId': Data.USER_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'type': 'week'} + r = requests.get(self.base_url, params=getData) + self.result_4 = r.json() + self.assertEqual(self.result_4['status'], 1, 'test_getAppRecordStats_week_success Error') + self.assertTrue(self.result_4['data']['gameTime'] > 0) + self.assertTrue(self.result_4['data']['studyTime'] > 0) + + +# 获取应用统计top排名 +class AppRecordTop(unittest.TestCase): + def setUp(self): + self.base_url = HOST_STA + '/app/record/top' + now = int(str(time.time()).split('.')[0]) + CreateTestData.create_app_use_record(now, Data.USER_ID, Data.DEVICE_NUMBER_CUS_BIND) + + def tearDown(self): + pass + + def test_getAppRecordTop_hjx(self): + getData = {'userId': Data.USER_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'type': 'hjx'} + r = requests.get(self.base_url, params=getData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'test_getAppRecordTop_hjx Error') + self.assertTrue(len(self.result_1['data']) > 0) + + def test_getAppRecordTop_other(self): + getData = {'userId': Data.USER_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'type': 'other'} + r = requests.get(self.base_url, params=getData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'test_getAppRecordTop_other Error') + self.assertTrue(len(self.result_2['data']) > 0) + + +# 获取某一天的app统计 +class AppRecordOneday(unittest.TestCase): + def setUp(self): + self.base_url = HOST_STA + '/app/record/oneday' + self.now = int(str(time.time()).split('.')[0]) + CreateTestData.create_app_use_record(self.now, Data.USER_ID, Data.DEVICE_NUMBER_CUS_BIND) + + def tearDown(self): + pass + + def test_getAppRecordOneday_success(self): + getData = {'userId': Data.USER_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'dayTimestamp': str(time.mktime(date.today().timetuple())).split('.')[0]} + pageNum = 1 + appRecord = [] + while True: + getData.update({'pageNum':pageNum}) + r = requests.get(self.base_url, params=getData) + self.result = r.json() + appRecord = appRecord + self.result['data'] + if len(self.result['data']) == 0: + break + pageNum += 1 + + self.result_1 = r.json() + self.assertTrue(len(appRecord) == 24) + + app_name = appRecord[0]['appName'] + time_spent = appRecord[0]['timeSpentTotal'] + time_end = appRecord[0]['latestTimeEnd'] + source_id = appRecord[0]['sourceId'] + category_id = appRecord[0]['categoryId'] + categoryType = appRecord[0]['categoryType'] + study_category = [25,26,27,28,57] + game_category = [37,38,39,100] + + where_1 = {'app_name':app_name, + 'time_spent':time_spent, + 'time_end': time_end, + 'source_id':source_id, + 'category_id':category_id, + 'user_id': Data.USER_ID, + 'device_number': Data.DEVICE_NUMBER_CUS_BIND + } + self.assertEqual(db_test.select_('analytics.app_record', where_1) , 1) + if category_id in study_category: + self.assertEqual(categoryType, 1) + if category_id in game_category: + self.assertEqual(categoryType, 2) + + +# 获取几天的app统计 +class AppRecordEveryday(unittest.TestCase): + def setUp(self): + self.base_url = HOST_STA + '/app/record/everyday' + self.now = int(str(time.time()).split('.')[0]) + # CreateTestData.create_app_use_record(self.now, Data.USER_ID, Data.DEVICE_NUMBER_CUS_BIND) + CreateTestData.create_app_use_record(self.now, '7000000054686780', '123456789002') + + + def tearDown(self): + pass + + def test_getAppRecordEveryday_success(self): + # getData = {'userId': Data.USER_ID, + # 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + # 'pageNum': 1, + # 'pageSize': 7} + getData = {'userId': '7000000054686780', + 'deviceNumber': '123456789002', + 'pageNum': 1, + 'pageSize': 7} + r = requests.get(self.base_url, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'test_getAppRecordEveryday_success Error') + self.assertEqual(self.result['data'][0]['gameTimeSpent'], 2550) + self.assertEqual(self.result['data'][0]['studyTimeSpent'], 3150) + + +# 获取当天的app统计 +class AppRecordToday(unittest.TestCase): + def setUp(self): + self.base_url = HOST_STA + '/app/record/today' + self.now = int(str(time.time()).split('.')[0]) + CreateTestData.create_app_use_record(self.now, Data.USER_ID, Data.DEVICE_NUMBER_CUS_BIND) + + def tearDown(self): + pass + + def test_AppRecordToday_success(self): + getData = {'userId': Data.USER_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND} + r = requests.get(self.base_url, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'AppRecordToday Error') + self.assertEqual(self.result['data']['gameTimeSpent'], 2550) + self.assertEqual(self.result['data']['studyTimeSpent'], 3150) + + +#重置数据接口 +class AppRecordReset(unittest.TestCase): + def setUp(self): + self.base_url = HOST_STA + '/app/record/reset' + # create elec card , to get mobile phpne + self.password = CreateTestData.get_parentSpace_password(Data.DEVICE_NUMBER_CUS_BIND) + now = int(str(time.time()).split('.')[0]) + CreateTestData.create_app_use_record(now, Data.USER_ID, Data.DEVICE_NUMBER_CUS_BIND) + + def tearDown(self): + pass + + def test_AppRecordReset_success(self): + getData = {'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'password': self.password, + 'userId': Data.USER_ID + } + r = requests.post(self.base_url, data=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'test_AppRecordReset_success Error') + where = {'device_number': Data.DEVICE_NUMBER_CUS_BIND, + 'user_id': Data.USER_ID + } + self.assertEqual(db_test.select_('analytics.app_record', where), 0) + + def test_AppRecordReset_passwordError(self): + getData = {'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'userId': Data.USER_ID, + 'password': self.password + '111' + } + r = requests.post(self.base_url, data=getData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1005, 'test_AppRecordReset_passwordError Error') + + + diff --git a/test_cases/debugggggg.py b/test_cases/debugggggg.py new file mode 100644 index 0000000..d3d07eb --- /dev/null +++ b/test_cases/debugggggg.py @@ -0,0 +1,118 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import uuid + +def create_app_use_record(user_id, device_number): + + study_apps = [{'app_name':"百度英语资料大全", 'app_pid':'com.sailang.EnglishBook','category_id':'25', \ + 'source_id':'1','time_spent': 100, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '开心大学士', 'app_pid': 'com.ksense.study','category_id':'26', 'source_id':'1', \ + 'time_spent': 200, }, + {'app_name': '驾考宝典', 'app_pid': 'com.handsgo.jiakao.android' ,'category_id':'27', 'source_id':'1', \ + 'time_spent': 300 }, + {'app_name': '我爱汉字', 'app_pid': 'com.cronlygames.hanzi' ,'category_id':'28', 'source_id':'1',\ + 'time_spent': 400}, + {'app_name': '拖拖乐3', 'app_pid': 'cn.com.wiisoft.tuotuo' ,'category_id':'57', 'source_id':'1', \ + 'time_spent': 100}] + + for j in range(0,2): + for i in range(0, 2): + time_end_1 = {'time_end': 28800 + i * 1000, 'id':str(uuid.uuid4()).replace('-', '')} + study_app = study_apps[i] + study_app.update(time_end_1) + mm = study_app + ll = len(study_app['app_name']) + ss = study_app['app_name'] + + +################################################ + +def create_app_use_record_2(user_id, device_number): + study_apps = [{'app_name':'百度英语资料大全', 'app_pid':'com.sailang.EnglishBook','category_id':'25', 'source_id':'1', \ + 'time_spent': 100, 'user_id': user_id, 'device_number': device_number} + # {'app_name': '开心大学士', 'app_pid': 'com.ksense.study','category_id':'26', 'source_id':'1', \ + # 'time_spent': 200, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '驾考宝典', 'app_pid': 'com.handsgo.jiakao.android' ,'category_id':'27', 'source_id':'1', \ + # 'time_spent': 300, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '我爱汉字', 'app_pid': 'com.cronlygames.hanzi' ,'category_id':'28', 'source_id':'1',\ + # 'time_spent': 400, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '拖拖乐3', 'app_pid': 'cn.com.wiisoft.tuotuo' ,'category_id':'57', 'source_id':'1', \ + # 'time_spent': 100, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '幼儿数字算数学习', 'app_pid': 'com.syhrobert1991.infantlearning' ,'category_id':'25', \ + # 'source_id':'1', 'time_spent': 200, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '轻松背单词之初中英语', 'app_pid': 'petpestzx.wordroid.model' ,'category_id':'26', \ + # 'source_id':'2', 'time_spent': 300, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '有谱-爱学习(数理化)', 'app_pid': 'com.emingren.youpu' ,'category_id':'27', 'source_id':'2', \ + # 'time_spent': 400, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '疯狂音标', 'app_pid': 'com.neo.crazyphonetic' ,'category_id':'28', 'source_id':'2', \ + # 'time_spent': 100, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '互动作业V3.18.6', 'app_pid': 'com.v.study' ,'category_id':'57', 'source_id':'2', \ + # 'time_spent': 250, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '发音背单词', 'app_pid': 'org.liberty.android.fantastischmemo' ,'category_id':'57', \ + # 'source_id':'2', 'time_spent': 350, 'user_id': user_id, 'device_number': device_number}, + # {'app_name': '语文100', 'app_pid': 'com.kk.kkyuwen' ,'category_id':'57', 'source_id':'2', \ + # 'time_spent': 450, 'user_id': user_id, 'device_number': device_number} + ] + + game_apps = [{'app_name': '小伴龙新', 'app_pid': 'com.xiaobanlong.main' ,'category_id':'37', 'source_id':'1',\ + 'time_spent': 100, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '三国群英传', 'app_pid': 'com.tencent.tmgp.sgqyz' ,'category_id':'38', 'source_id':'1', \ + 'time_spent': 200, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '童言童语', 'app_pid': 'com.lingshi.kids' ,'category_id':'39', 'source_id':'2', \ + 'time_spent': 300, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '从前啊', 'app_pid': 'com.mojie.longlongago' ,'category_id':'37', 'source_id':'2', \ + 'time_spent': 400, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '永恒纪元', 'app_pid': 'com.m37.dtszj.uc' ,'category_id':'38', 'source_id':'2', \ + 'time_spent': 100, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '我的世界新', 'app_pid': 'com.netease.mc.aligames' ,'category_id':'39', 'source_id':'2', \ + 'time_spent': 200, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '球球大作战', 'app_pid': 'com.ztgame.bob', 'category_id': '37', 'source_id': '2', \ + 'time_spent': 300, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '葫芦侠我的世界', 'app_pid': 'com.huluxia.mctool', 'category_id': '38', 'source_id': '2',\ + 'time_spent': 400, 'user_id': user_id, 'device_number': device_number}, + {'app_name': 'QQ游戏V6.8.7', 'app_pid': 'com.tencent.qqgame', 'category_id': '39', 'source_id': '2',\ + 'time_spent': 100, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '99围棋最新', 'app_pid': 'com.r99weiqi.dvd', 'category_id': '37', 'source_id': '2', \ + 'time_spent': 50, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '凯蒂环球之旅', 'app_pid': 'com.tencent.HelloKitty', 'category_id': '37', 'source_id': '2',\ + 'time_spent': 150, 'user_id': user_id, 'device_number': device_number}, + {'app_name': '贪吃蛇大作战', 'app_pid': 'com.wepie.snake.qihoo', 'category_id': '100', 'source_id': '2',\ + 'time_spent': 250, 'user_id': user_id, 'device_number': device_number} + ] + + # get date of the last 7 days(include today) + days = ['111111','222222','333333'] # the day should insert app records + + for day in days: + for i in range(0, 12): + time_end_1 = {'time_end': int(day) + 28800 + i * 1000, 'id':str(uuid.uuid4()).replace('-', '')} + time_end_2 = {'time_end': int(day) + 29800 + i * 500, 'id':str(uuid.uuid4()).replace('-', '')} + #study_apps[i].update(time_end_1) + #game_apps[i].update(time_end_2) + study_app = study_apps[0] + study_app.update(time_end_1) + ll = len(study_app['app_name']) + ss = study_app['app_name'] + game_app = game_apps[i] + game_app.update(time_end_2) + #db.insert('analytics.app_record_copy', study_app) + # db.insert('analytics.app_record_copy', game_app) + + +if __name__ == '__main__': + create_app_use_record_2('556600', 'HJKKJ1223123') + + + + + + + + + + + + + + diff --git a/test_cases/eleccard_check.py b/test_cases/eleccard_check.py new file mode 100644 index 0000000..8027f3f --- /dev/null +++ b/test_cases/eleccard_check.py @@ -0,0 +1,60 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import logging +import unittest +import requests +from data_fixture.config_data import HOST_BOSS +from data_fixture import create_testdata as CreateTestData +from data_fixture import config_data as Data + + +#检查是否需要绑定保卡 +class CheckElecCardBind(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/electronicCard/check" + CreateTestData.pre_elecCard(Data.DEVICE_NUMBER_CUS_BIND, Data.DEVICE_NUMBER_SAM, Data.DEVICE_NUMBER_CUS_UNBIND) + + def tearDown(self): + print(self.result) + + # 已绑定 -- 客机 + def test_checkElecCard_customerMachine(self): + headers = {'Accept': '*/*'} + getData = {'deviceNumber':Data.DEVICE_NUMBER_CUS_BIND} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'checkElecCard_customerMachine Error') + + # 样机 + def test_checkElecCard_sampleMachine(self): + headers = {'Accept': '*/*'} + getData = {'deviceNumber': Data.DEVICE_NUMBER_SAM} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 2002, 'checkElecCard_sampleMachine Error') + + # 未绑定 -- 客机 + def test_checkElecCard_unbind(self): + headers = {'Accept': '*/*'} + getData = {'deviceNumber': Data.DEVICE_NUMBER_CUS_UNBIND} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 2001, 'checkElecCard_unbind Error') + + +#获取保卡信息 +class GetCardInfo(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/electronicCard/info" + CreateTestData.pre_elecCard(Data.DEVICE_NUMBER_CUS_BIND) + + def tearDown(self): + print(self.result) + + def test_getCardInfo_success(self): + headers = {'Accept': '*/*'} + getData = {'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'getCardInfo Error') diff --git a/test_cases/eleccard_setUp.py b/test_cases/eleccard_setUp.py new file mode 100644 index 0000000..0aab291 --- /dev/null +++ b/test_cases/eleccard_setUp.py @@ -0,0 +1,128 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import requests +from data_fixture.config_data import HOST_BOSS, HOST_ADMIN +from data_fixture import create_testdata as CreateTestData +from data_fixture import config_data as Data + + +#添加客机保卡 +class SetUpElecCard(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/electronicCard/addCustomer" + CreateTestData.pre_SetUpElecCard() + def tearDown(self): + print(self.result) + + def test_addElecCard_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'userId':Data.USER_ID, + 'customerName':'customer测试', + 'customerAddress':'田林路487号', + 'buyAddress':'虹梅路888号', + 'buyTime':'2017-12-02', + 'alterSaleCall':'55558888', + 'productModel':'TEST', + 'deviceNumber': Data.DEVICE_NUMBER_NEW, + 'macAddress':Data.MAC_NEW, + 'customerPhone':Data.USER_PHONE + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'addElecCard Error') + + +# 置为样机,提交终端信息 +class SetToSample(unittest.TestCase): + + def setUp(self): + self.base_url = HOST_ADMIN + "/admin/elecCard/updateToSample" + CreateTestData.pre_elecCard(device_cus_bind=Data.DEVICE_NUMBER_TO_SAM) + + def tearDown(self): + pass + + def test_updateToSample_success(self): + headers = {'Content-Type': 'multipart/form-data', 'Accept': 'application/json'} + postData = {'userId':Data.USER_ID, + 'deviceNumber':Data.DEVICE_NUMBER_TO_SAM, + 'terminalAddress':'terminalAddress终端地址', + 'distributor':'distributor经销商', + 'saleClerk':'saleClerk销售员', + 'mobilePhone':'18944444444' + } + files = {'photo':('252ED989-0B16-4AB7-81C1-974ABCF6CA11.png','image/png')} + r = requests.post(self.base_url, headers=headers, files=files, data=postData, allow_redirects=False) + self.assertEqual(r.status_code, 302, 'updateToSampleError') + + +#置为客机 +class SetToCustomer(unittest.TestCase): + + def setUp(self): + self.base_url = HOST_ADMIN + "/admin/elecCard/updateToCustomer" + CreateTestData.pre_elecCard(device_sam=Data.DEVICE_NUMBER_TO_CUS) + + def tearDown(self): + pass + + def test_updateToCustomer_success(self): + headers = {'Accept': 'application/json'} + getData = {'userId': Data.USER_ID, 'deviceNumber': Data.DEVICE_NUMBER_TO_CUS} + r = requests.get(self.base_url, data=getData, allow_redirects=False) + self.assertEqual(r.status_code, 302, 'updateToCustomerError') + + +#解绑保卡 +class Unbind(unittest.TestCase): + def setUp(self): + self.base_url = HOST_ADMIN + "/admin/elecCard/delete" + CreateTestData.pre_elecCard(device_cus_bind=Data.DEVICE_NUMBER_UNBIND) + + def tearDown(self): + pass + + def test_unbindCard_success(self): + headers = {'Accept': '*/*'} + getData = {'deviceNumber': Data.DEVICE_NUMBER_UNBIND} + r = requests.get(self.base_url, headers=headers, data=getData, allow_redirects=False) + # self.result = r.json() + self.assertEqual(r.status_code, 302, 'unbindCardError') + + +#修改保卡 +class Card_Modify(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/electronicCard/updateByUserId" + CreateTestData.pre_elecCard(device_cus_bind=Data.DEVICE_NUMBER_EDIT) + self.authCode = CreateTestData.fet_authCode(Data.USER_PHONE_EDIT) + + def tearDown(self): + print(self.result) + + def test_modifyCardInfo_phone_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = { + 'customerPhone':Data.USER_PHONE_EDIT, + 'authCode':self.authCode, + 'deviceNumber': Data.DEVICE_NUMBER_EDIT + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'elecCardModifyError') + + def test_modifyCardInfo_address_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = { + 'deviceNumber': Data.DEVICE_NUMBER_EDIT, + 'customerAddress': '上海徐汇区田林路888号修改', + 'customerPhone': Data.USER_PHONE_EDIT, + 'authCode':self.authCode + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'elecCardModifyError') + + diff --git a/test_cases/parent_space.py b/test_cases/parent_space.py new file mode 100644 index 0000000..adaf8b7 --- /dev/null +++ b/test_cases/parent_space.py @@ -0,0 +1,106 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import requests +from data_fixture.config_data import HOST_BOSS, HOST_STA +from data_fixture import create_testdata as CreateTestData +from data_fixture import config_data as Data +from data_fixture.mysql_db import DB +import uuid +import time + + +db_test = DB() + +# 家长控制登录 +class ParentSpaceLogin(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/parentsSpacePass/login' + self.password = CreateTestData.get_parentSpace_password(Data.DEVICE_NUMBER_CUS_BIND) + + def tearDown(self): + print(self.result) + + def test_ParentSpaceLogin_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'password': self.password, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'ParentSpaceLogin Error') + + def test_ParentSpaceLogin_WrongPassword(self): + password_wrong = self.password + '11' + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'password': password_wrong, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1005, 'test_ParentSpaceLogin_WrongPassword Error') + + +# 家长控制修改密码 +class ParentSpaceChangePassword(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/parentsSpacePass/changePassword' + self.oldPass = CreateTestData.get_parentSpace_password(Data.DEVICE_NUMBER_CUS_BIND) + + def tearDown(self): + print(self.result) + + def test_ParentSpaceChangePassword_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'oldPass': self.oldPass, + 'newPass': '111111', + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'ParentSpacehangePassword Error') + where = {'password': '111111', + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND } + self.assertEqual(db_test.select_('acornuser.parents_space_pass', where), 1, 'ParentSpacehangePassword data Error') + + +#家长控制忘记密码 +class ParentSpaceNewPassword(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/parentsSpacePass/newpassword' + CreateTestData.pre_elecCard(Data.DEVICE_NUMBER_CUS_BIND) + sql = "SELECT customerPhone FROM acornuser.ozing_customermachine where deviceNumber = '{}'".format(Data.DEVICE_NUMBER_CUS_BIND) + self.mobile = db_test.select(sql)[0]["customerPhone"].strip() + self.auth = CreateTestData.fet_authCode(self.mobile) + + def tearDown(self): + pass + + def test_ParentSpaceNewPassword_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'userName': self.mobile, + 'authCode': self.auth, + 'password': '111111', + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'test_ParentSpaceNewPassword_success Error') + where = {'password': '111111', + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND } + self.assertEqual(db_test.select_('acornuser.parents_space_pass', where), 1, 'ParentSpacehangePassword data Error') + + def test_ParentSpaceNewPassword_authCodeError(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'userName': self.mobile, + 'authCode': str(int(self.auth) - 1), + 'password': '111111', + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1001, 'test_ParentSpaceNewPassword_success Error') + + + diff --git a/test_cases/personal_info.py b/test_cases/personal_info.py new file mode 100644 index 0000000..71fcf75 --- /dev/null +++ b/test_cases/personal_info.py @@ -0,0 +1,257 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import requests +from data_fixture.config_data import HOST_BOSS +from data_fixture import config_data as Data +from data_fixture import create_testdata +from data_fixture.mysql_db import DB +import os +import uuid + +db_test = DB() +current_dir = str(os.path.dirname(__file__)) + +#获取个人信息 +class GetPersonalInfo(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/personal/get" + self.subAccount = str(uuid.uuid4()).replace('-', '') + create_testdata.pre_subAccount(Data.USER_ID, self.subAccount, 1) + + def tearDown(self): + pass + + def test_getParentAccountInfo_success(self): + headers = {'Accept': '*/*'} + getData = {'userId': Data.USER_ID, 'type': 1} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'get parent info fail') + + def test_getChildAccountInfo_success(self): + headers = {'Accept': '*/*'} + getData = {'userId': Data.USER_ID, 'type': 2} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'get child info fail') + + +#修改个人信息 +class UpdatePersonalInfo(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/personal/update" + self.subAccount = str(uuid.uuid4()).replace('-', '') + create_testdata.pre_subAccount(Data.PARENT_ID, self.subAccount, 1) + + def tearDown(self): + pass + + def test_UpdateParentInfo_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = { + 'userId':Data.PARENT_ID, + 'type': 1, + 'name':'主账户', + 'birthday':'2003-12-12', + 'gradeId': '9', + 'regionId' : '320100', + 'schoolId': '500018', + 'qq': '1313131313', + 'gender': 'female', + 'regionName': '江苏南京玄武', + 'deviceNumber': Data.DEVICE_NUMBER_NEW, + 'address':'幸福小区308' + } + where_data_1 = {'id':Data.PARENT_ID, 'qq': '1313131313'} + where_data_2 = {'user_id':Data.PARENT_ID, 'school_id': '500018'} + where_data_3 = {'user_id':Data.PARENT_ID, 'address':'幸福小区308'} + r = requests.post(self.base_url, headers=headers, data=postData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'UpdateParentInfo ERROR') + self.assertTrue(db_test.select_('acornuser.acorn_user', where_data_1), 1) + self.assertTrue(db_test.select_('acornuser.ozing_student', where_data_2), 1) + self.assertTrue(db_test.select_('acornuser.acorn_user_extra', where_data_3), 1) + + + def test_UpdateChildInfo_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = { + 'userId': Data.PARENT_ID, + 'type': 2, + 'name': '子账户', + 'birthday': '2010-12-12', + 'gradeId': '6', + 'regionId': '330100', + 'schoolId': '6129', + 'qq': '1515151515', + 'gender': 'female', + 'regionName': '浙江杭州西湖', + 'deviceNumber': Data.DEVICE_NUMBER_NEW, + 'address': '鲜花小区808' + } + where_data_child = {'qq': '1515151515', 'address': '鲜花小区808'} + r = requests.post(self.base_url, headers=headers, data=postData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'UpdateParentInfo ERROR') + self.assertTrue(db_test.select_('acornuser.child_user', where_data_child)) + + +# 添加和修改个性签名 +class AddorUpdateSignature(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/signature/addOrUpdateSignature" + self.subAccount = str(uuid.uuid4()).replace('-', '') + create_testdata.pre_subAccount(Data.PARENT_ID, self.subAccount, 0) + create_testdata.checkSignatureExists(Data.PARENT_ID, 1) + create_testdata.checkSignatureExists(self.subAccount, 2) + + def tearDown(self): + pass + + def test_AddParentSignature_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'userId':Data.PARENT_ID, + 'signature':'who is the clever Polly 谁是聪明的鹦鹉', + 'type': 1} + r = requests.post(self.base_url, headers=headers, data=postData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'AddParentSignature ERROR') + where_1 = {'user_id':Data.PARENT_ID, + 'signature':'who is the clever Polly 谁是聪明的鹦鹉'} + self.assertEqual(db_test.select_('acornuser.acorn_user_extra', where_1), 1) + + def test_UpdateParentSignature_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'userId':Data.PARENT_ID, + 'signature':'clever Polly 一只吵人的鹦鹉', + 'type': 1} + r = requests.post(self.base_url, headers=headers, data=postData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'UpdateParentSignature ERROR') + where_2 = {'user_id':Data.PARENT_ID, + 'signature':'clever Polly 一只吵人的鹦鹉'} + self.assertEqual(db_test.select_('acornuser.acorn_user_extra', where_2), 1, 'UpdateParentSignature ERROR') + + def test_AddChildSignature_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'userId':self.subAccount, + 'signature':'Polly can you spell its name 波利', + 'type': 2} + r = requests.post(self.base_url, headers=headers, data=postData) + self.result_3 = r.json() + self.assertEqual(self.result_3['status'], 1, 'AddChildSignature ERROR') + where_1 = {'sub_account_id':self.subAccount, + 'signature':'Polly can you spell its name 波利'} + self.assertEqual(db_test.select_('acornuser.subAccount_user_extra', where_1), 1, 'AddChildSignature ERROR') + + def test_UpdateChildSignature_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'userId':self.subAccount, + 'signature':'波利 P-O-L-L-Y', + 'type': 2} + r = requests.post(self.base_url, headers=headers, data=postData) + self.result_4 = r.json() + self.assertEqual(self.result_4['status'], 1, 'UPDATEChildSignature ERROR') + where_1 = {'sub_account_id':self.subAccount, + 'signature':'波利 P-O-L-L-Y'} + self.assertEqual(db_test.select_('acornuser.subAccount_user_extra', where_1), 1, 'UPDATEChildSignature ERROR') + + +# 显示个性签名 +class GetSignature(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/signature/info" + self.subAccount = str(uuid.uuid4()).replace('-', '') + create_testdata.checkSignatureExists(Data.PARENT_ID, 1) + create_testdata.checkSignatureExists(self.subAccount, 2) + + def tearDown(self): + pass + + def test_getParentSignature_success(self): + headers = {'Accept': '*/*'} + getData = {'userId': Data.PARENT_ID, 'type': 1} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'get parent Signature fail') + + def test_getChildSignature_success(self): + headers = {'Accept': '*/*'} + getData = {'userId': self.subAccount, 'type': 2} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'get child Signature fail') + + +#更新用户头像 -- 默认图片 +class UpdatePortraitDefault(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/profile/picture/default" + self.subAccount = str(uuid.uuid4()).replace('-', '') + create_testdata.pre_subAccount(Data.PARENT_ID, self.subAccount, 0) + + def tearDown(self): + pass + + def test_UpdateParentPortraitDefault_success(self): + headers = {'Accept': '*/*', 'Content-Type':'application/x-www-form-urlencoded'} + postData = {'userId': Data.PARENT_ID, 'type': 1, + 'defaultImg':'http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/61e8d8cf-651f-49c9-beb2-ff1387af390a.png'} + r = requests.post(self.base_url, headers=headers, data=postData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'UpdateParentPortrait fail') + where = {'user_id': Data.PARENT_ID, + 'portrait':'static/upload/boss_api/announcement/2017-08-29/61e8d8cf-651f-49c9-beb2-ff1387af390a.png'} + self.assertEqual(db_test.select_('acornuser.ozing_student', where), 1, 'UpdateParentPortraitDefault fail') + + def test_UpdateChildPortraitDefault_success(self): + headers = {'Accept': '*/*', 'Content-Type':'application/x-www-form-urlencoded'} + postData = {'userId': self.subAccount, 'type': 2, + 'defaultImg': 'http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/61e8d8cf-651f-49c9-beb2-ff1387af390a.png'} + r = requests.post(self.base_url, headers=headers, data=postData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'UpdateChildPortrait fail') + where = {'subAccountId': self.subAccount, + 'image': 'static/upload/boss_api/announcement/2017-08-29/61e8d8cf-651f-49c9-beb2-ff1387af390a.png'} + self.assertEqual(db_test.select_('acornuser.child_user', where), 1, 'UpdateChildPortraitDefault fail') + + +#更新用户头像-- 上传文件 +class UpdatePortrait(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/profile/picture/update" + img_file_1 = current_dir + '/1.jpg' + img_file_2 = current_dir + '/1.png' + self.img_1 = open(img_file_1, 'rb') + self.img_2 = open(img_file_2, 'rb') + self.subAccount = str(uuid.uuid4()).replace('-', '') + create_testdata.pre_subAccount(Data.PARENT_ID, self.subAccount, 0) + + def tearDown(self): + pass + + def test_UpdateParentPortraitDefault_success(self): + headers = {'Accept': '*/*', 'Content-Type':'multipart/form-data; boundary=cada83b1d4b82a7ccd28ae8f7f6d6'} + postData = {'userId': Data.PARENT_ID, 'type': 1} + file = {'img': self.img_1} + r = requests.post(self.base_url, data=postData, files=file) + ss = r.request + self.img_1.close() + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'UpdateParentPortrait fail') + self.assertEqual(len(self.result_1['data']), 1, 'UpdateParentPortrait data fail') + + def test_UpdateChildPortrait_success(self): + headers = {'Accept': '*/*', 'Content-Type':'multipart/form-data; boundary=fa0cada83b1d4b82a7ccd28ae8f7f6d6'} + postData = {'userId': self.subAccount, 'type': 2} + file = {'img': self.img_2} + r = requests.post(self.base_url, data=postData, files=file) + ss = r.request + self.img_2.close() + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'UpdateChildPortrait fail') + self.assertEqual(len(self.result_2['data']), 1, 'UpdateChildPortrait data fail') + + diff --git a/test_cases/press.py b/test_cases/press.py new file mode 100644 index 0000000..c03112a --- /dev/null +++ b/test_cases/press.py @@ -0,0 +1,91 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import requests +from data_fixture.config_data import HOST_BOSS +from data_fixture import create_testdata as CreateTestData +from data_fixture import config_data as Data +from data_fixture.mysql_db import DB + +db_test = DB() + + +# 获取教材版本列表 +class GetPressList(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/press/list' + + def tearDown(self): + print(self.result) + + def test_getPressList_success(self): + headers = {'Accept': '*/*'} + getData = {'subjectName': '数学'} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'getPressList Error') + self.assertTrue(len(self.result['data']) > 1, 'getPressList data Error') + + +# 获取用户版本信息接口 +class GetUserPressInfo(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/userPress/info' + CreateTestData.pre_GetUserPressInfo(Data.USER_ID) + + def tearDown(self): + print(self.result) + + def test_getPressList_success(self): + headers = {'Accept': '*/*'} + getData = {'userId': Data.USER_ID, 'gradeId': 9} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'GetUserPressInfo Error') + data = self.result['data'] + for item in data: + if item['subject'] == '语文': + press_to_check = item['press'] + self.assertEqual(press_to_check, '北京师范大学出版社', 'GetUserPressInfo data Error') + + +# 修改版本信息接口 +class UpdateUserPressInfo(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/userPress/update' + + def tearDown(self): + print(self.result) + + def test_getPressList_success(self): + headers = {'Accept': '*/*', 'Content-Type': 'application/x-www-form-urlencoded'} + postData = {'userId': Data.USER_ID, + 'chemistry': '山东教育出版社', + 'chinese': '江苏教育出版社', + 'biology': '人民教育出版社', + 'geography': '人民教育出版社', + 'physics': '人民教育出版社', + 'english': '外语教学与研究出版社', + 'political': '人民教育出版社', + 'math': '江苏科学技术出版社', + 'history': '人民教育出版社' + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'UpdateUserPressInfo Error') + where = {'user_id': Data.USER_ID, + 'chemistry': '山东教育出版社', + 'chinese': '江苏教育出版社', + 'biology': '人民教育出版社', + 'geography': '人民教育出版社', + 'physics': '人民教育出版社', + 'english': '外语教学与研究出版社', + 'political': '人民教育出版社', + 'math': '江苏科学技术出版社', + 'history': '人民教育出版社' + } + self.assertEqual(db_test.select_('acornuser.user_press', where), 1, 'UpdateUserPressInfo data Error') + + + diff --git a/test_cases/region_grade_school.py b/test_cases/region_grade_school.py new file mode 100644 index 0000000..7899ce7 --- /dev/null +++ b/test_cases/region_grade_school.py @@ -0,0 +1,89 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import requests +from data_fixture.config_data import HOST_BOSS + +# 省 +class GetProvince(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/ozing/provinces" + + def tearDown(self): + print(self.result) + + def test_getProvince_success(self): + headers = {'Accept': '*/*'} + r = requests.get(self.base_url, headers=headers) + self.result = r.json() + self.assertEqual(self.result['status'], 100, 'get province fail') + self.assertTrue(len(self.result['provinces']) > 0, 'province data wrong') + +# 市 +class GetCities(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/ozing/cities" + self.regionId = '330000' #浙江 + self.city ='330100' # 杭州 + + def tearDown(self): + print(self.result) + + def test_getCities_success(self): + headers = {'Accept': '*/*'} + getData = {'regionId': self.regionId} + r = requests.get(self.base_url, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 100, 'get cities fail') + self.assertTrue(len(self.result['cities']) > 0, 'cities data wrong') + +# 区 +class GetCounties(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/ozing/counties" + self.regionId = '330100' # 杭州 + self.county ='330106' # 西湖 + + def tearDown(self): + print(self.result) + + def test_getCounties_success(self): + headers = {'Accept': '*/*'} + getData = {'regionId': self.regionId} + r = requests.get(self.base_url, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 100, 'get counties fail') + self.assertTrue(len(self.result['counties']) > 0, 'counties data wrong') + +# 年级 +class GetGrades(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/grades" + + def tearDown(self): + print(self.result) + + def test_getGrades_success(self): + headers = {'Accept': 'application/json'} + r = requests.get(self.base_url, headers=headers) + self.result = r.json() + self.assertTrue(len(self.result['data']) > 0, 'grades data wrong') + + +# 学校 +class GetSchools(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/school/get" + self.regionId = '330106' #西湖 + self.gradeId = '6' #五年级 + + def tearDown(self): + print(self.result) + + def test_getSchools_success(self): + headers = {'Accept': 'application/json'} + getData = {'regionId': self.regionId, 'gradeId': self.gradeId} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + self.assertTrue(len(self.result['data']) > 0, 'school data wrong') diff --git a/test_cases/register.py b/test_cases/register.py new file mode 100644 index 0000000..ff32837 --- /dev/null +++ b/test_cases/register.py @@ -0,0 +1,243 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import requests +from data_fixture.config_data import HOST_BOSS +from data_fixture import create_testdata as CreateTestData +from data_fixture import config_data as Data +from data_fixture.mysql_db import DB +import os +from requests_toolbelt import MultipartEncoder + +db_test = DB() +current_dir = str(os.path.dirname(__file__)) + +#手机号重复验证 +class PhoneUsedCheck(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/ozing/timer/user/registered" + CreateTestData.pre_phoneUsedCheck(Data.USER_PHONE_USED, True) + CreateTestData.pre_phoneUsedCheck(Data.USER_PHONE_UNUSED, False) + + def tearDown(self): + print(self.result) + + # 注册过的手机号 + def test_phone_used(self): + getData = {'mobile':Data.USER_PHONE_USED} + r = requests.get(self.base_url, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], True) + + # 手机号未注册 + def test_phone_unused(self): + getData = {'mobile':Data.USER_PHONE_UNUSED} + r = requests.get(self.base_url, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], False) + + +# 获取验证码 --register +class GetAuthCode(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/ozing/timer/user/fetchAuthCode" + self.mobile = '13833333333' + + def tearDown(self): + print(self.result) + + def test_getAuthCode_success(self): + headers = {'Accept': '*/*'} + postData = {'mobile': self.mobile, 'type': 'register'} + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 100) + + +#用户注册 +class SignIn(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + "/ozing/timer/anking/user" + self.smsCode = CreateTestData.fet_authCode(Data.USER_PHONE) + CreateTestData.pre_phoneUsedCheck(Data.USER_PHONE, False) + + def tearDown(self): + print(self.result) + + def test_signIn_success(self): + headers = {'Content-Type': 'application/json', 'Accept': '*/*'} + postData = { + "username": Data.USER_PHONE, + "password": 'Hjx111111', + "source": 'Android', + "smscode": self.smsCode + } + r = requests.post(self.base_url, headers=headers, json=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 100) + + +# 检查用户注册信息是否完整 +class RegisterExtrainfoCheck(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/register/extrainfo/check' + CreateTestData.pre_register_extrainfo_check(Data.USER_ID, True) + CreateTestData.pre_register_extrainfo_check(Data.USER_ID_INCOMPLETE, False) + + def tearDown(self): + pass + + def test_checkRegisterExtrainfo_Complete_success(self): + headers = {'Accept': '*/*'} + getData = {'userId': Data.USER_ID} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'test_checkRegisterExtrainfo_Complete fail') + self.assertEqual(self.result_1['data']['isRegisterInfoComplete'], True, 'test_checkRegisterExtrainfo_Complete data fail') + + def test_checkRegisterExtrainfo_inComplete_success(self): + headers = {'Accept': '*/*'} + getData = {'userId': Data.USER_ID_INCOMPLETE} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'test_checkRegisterExtrainfo_inComplete fail') + self.assertEqual(self.result_2['data']['isRegisterInfoComplete'], False, + 'test_checkRegisterExtrainfo_inComplete data fail') + + +# 提交注册信息 +class RegisterExtrainfoSubmit(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/register/extrainfo/submit' + + def tearDown(self): + print(self.result) + + def test_RegisterExtrainfoSubmit_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = { + 'name': '测试测试lalalallal', + 'gradeId': 7, + 'schoolId': 68779, + 'regionName': '浙江杭州西湖', + 'regionId': 330106, + 'userId': Data.USER_ID, + 'chinese': '北京出版社', + 'english': '人民教育出版社', + 'math': '人民教育出版社' + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'RegisterExtrainfoSubmit Error') + where_1 = {'id': Data.USER_ID,'nickname': '测试测试lalalallal'} + where_2 = {'user_id': Data.USER_ID, + 'grade_id': 7, + 'school_id': 68779, + 'region_name': '浙江杭州西湖', + 'region_id': 330106} + where_3 = {'user_id': Data.USER_ID, + 'chinese': '北京出版社', + 'english': '人民教育出版社', + 'math': '人民教育出版社' + } + self.assertEqual(db_test.select_('acornuser.acorn_user', where_1), 1, 'RegisterExtrainfoSubmit Error') + self.assertEqual(db_test.select_('acornuser.ozing_student', where_2), 1, 'RegisterExtrainfoSubmit Error') + self.assertEqual(db_test.select_('acornuser.user_press', where_3), 1, 'RegisterExtrainfoSubmit Error') + + +#账户管理界面更换手机号绑定 +class UpdateUserNameByUserId(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/electronicCard/updateUserNameByUserId' + self.authCode_1 = CreateTestData.fet_authCode(Data.USER_PHONE_CHANGE_EXISTS) + self.authCode_2 = CreateTestData.fet_authCode(Data.USER_PHONE_CHANGE) + CreateTestData.pre_phoneUsedCheck(Data.USER_PHONE_CHANGE_EXISTS, True) + CreateTestData.pre_phoneUsedCheck(Data.USER_PHONE_CHANGE, False) + + def tearDown(self): + print(self.result) + + def test_UpdateUserNameByUserId_phoneExists_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = { + 'username': Data.USER_PHONE_CHANGE_EXISTS, + 'authCode': self.authCode_1, + 'userId': Data.USER_ID + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1006, 'UpdateUserNameByUserId_phoneExists Error') + + def test_UpdateUserNameByUserId_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = { + 'username': Data.USER_PHONE_CHANGE, + 'authCode': self.authCode_2, + 'userId': Data.USER_ID + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'UpdateUserNameByUserId Error') + + +# 添加用户反馈 +class AddFeedBack(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/feedback/add' + img_file = current_dir + '/1.png' + self.img = open(img_file, 'rb') + + def tearDown(self): + print(self.result) + + def test_AddFeedBack_success(self): + headers = {'Content-Type': 'multipart/form-data; boundary=fa0cada83b1d4b82a7ccd28ae8f7f6d6', 'Accept': '*/*'} + postData = { + 'userId': Data.USER_ID, + 'content': '11111feedback哦哦哦', + 'contact': '00000000', + 'feedtype': '个人中心' + } + file = {'imgs': self.img} + + r = requests.post(self.base_url, data=postData, files=file) + #r = requests.post(self.base_url, headers=headers, data=postData) + ss = r.request + self.img.close() + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'AddFeedBack Error') + select = {'userId': Data.USER_ID, + 'content': '11111feedback哦哦哦', + 'contact': '00000000', + 'feedtype': '个人中心'} + self.assertTrue(db_test.select_('acornuser.feedback', select) > 0, 'AddFeedBack data insert Error') + + +# 获取最近观看视频列表 +class GetRecentVideo(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/personal/video/recent' + CreateTestData.pre_getRecentVideo(Data.USER_ID_NO_VIDEO, 0) + CreateTestData.pre_getRecentVideo(Data.USER_ID_VIDEO, 1) + + def tearDown(self): + pass + + def test_GetRecentVideo_noVideo_success(self): + getData = {'userId': Data.USER_ID_NO_VIDEO, + 'pageNum': 1} + r = requests.get(self.base_url, params=getData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1000, 'GetRecentVideo-noVideo fail') + + def test_GetRecentVideo_success(self): + getData = {'userId': Data.USER_ID_VIDEO, + 'pageNum': 1} + r = requests.get(self.base_url, params=getData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1, 'GetRecentVideo fail') + + + + diff --git a/test_cases/sub_account.py b/test_cases/sub_account.py new file mode 100644 index 0000000..a12e572 --- /dev/null +++ b/test_cases/sub_account.py @@ -0,0 +1,118 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import requests +from data_fixture.config_data import HOST_BOSS +from data_fixture import create_testdata as CreateTestData +from data_fixture import config_data as Data +from data_fixture.mysql_db import DB +import uuid + +db_test = DB() + +#添加子账户 +class AddSubAccount(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/childUser/addChildUser' + CreateTestData.pre_AddSubAccount(Data.PARENT_ID) + + def tearDown(self): + print(self.result) + + def test_addSubAccount_success(self): + headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} + postData = {'parentId': Data.PARENT_ID, + 'image': Data.SUB_ACC_IMAGE, + 'name': '测试sub', + 'gradeId': '6', + 'schoolId': Data.SUB_ACC_SCHOOL_ID_1, + 'regionId': Data.SUB_ACC_REGION_ID_1, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'regionName': Data.SUB_ACC_REGION_NAME_1 + } + r = requests.post(self.base_url, headers=headers, data=postData) + self.result = r.json() + self.assertEqual(db_test.select_('acornuser.child_user', {'parent_id': Data.PARENT_ID}), 1, 'addSubAccount Error') + self.assertEqual(self.result['status'], 1, 'addSubAccount Error') + + +#查找子账户信息 +class GetSubAccount(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/childUser/info' + self.subAccount_1 = str(uuid.uuid4()).replace('-', '') + self.subAccount_2 = str(uuid.uuid4()).replace('-', '') + CreateTestData.pre_subAccount(Data.PARENT_ID, self.subAccount_1, 0) + CreateTestData.pre_subAccount(Data.PARENT_ID, self.subAccount_2, 1) + + def tearDown(self): + print(self.result) + + def test_getSubAccount_success(self): + headers = {'Accept': '*/*'} + getData = {'userId': Data.PARENT_ID, 'deviceNumber':Data.DEVICE_NUMBER_CUS_BIND} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'getSubAccount Error') + self.assertTrue(len(self.result['data']) > 1, 'getSubAccount data Error') + + +#删除子账户 +class DelSubAccount(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/childUser/delete' + self.subAccount = str(uuid.uuid4()).replace('-', '') + CreateTestData.pre_subAccount(Data.PARENT_ID, self.subAccount, 0) + + def tearDown(self): + print(self.result) + + def test_delSubAccount_success(self): + headers = {'Accept': '*/*'} + getData = {'subAccountId': self.subAccount} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + self.assertEqual(db_test.select_('acornuser.child_user', {'subAccountId': self.subAccount}), 0, 'delSubAccount Error') + self.assertEqual(self.result['status'], 1, 'delSubAccount ERROR') + + +#切换账户 +class SwitchAccounts(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/childUser/update' + self.subAccount = str(uuid.uuid4()).replace('-', '') + CreateTestData.pre_subAccount(Data.PARENT_ID, self.subAccount, 0) + + def tearDown(self): + print(self.result) + + def test_swichToSubAccount_success(self): + headers = {'Accept': '*/*'} + getData = {'subAccountId': self.subAccount, + 'userId': Data.PARENT_ID, + 'deviceNumber' : Data.DEVICE_NUMBER_CUS_BIND, + 'type': 2} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + where_data = {'parent_id': Data.PARENT_ID,'subAccountId': self.subAccount, 'status':1} + self.assertEqual(db_test.select_('acornuser.child_user', where_data), 1, 'swichToSubAccount Error') + self.assertEqual(self.result['status'], 1, 'swichToSubAccount ERROR') + + def test_swichToParentAccount_success(self): + headers = {'Accept': '*/*'} + getData = {'userId': Data.PARENT_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'type': 1} + r = requests.get(self.base_url, headers=headers, params=getData) + self.result = r.json() + where_data = {'userId': Data.PARENT_ID, + 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, + 'status': 1} + self.assertEqual(db_test.select_('acornuser.acorn_user_status', where_data), 1, 'swichToParentAccount Error') + self.assertEqual(self.result['status'], 1, 'swichToParentAccount ERROR') + + + + + diff --git a/test_cases/subject_sync.py b/test_cases/subject_sync.py new file mode 100644 index 0000000..ea6a242 --- /dev/null +++ b/test_cases/subject_sync.py @@ -0,0 +1,111 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import unittest +import requests +from data_fixture.config_data import HOST_BOSS, HOST_STA, HOST_RES +from data_fixture import create_testdata as CreateTestData +from data_fixture import config_data as Data +from data_fixture.mysql_db import DB +import time +from datetime import date + +db_test = DB() + +#获取同步视频接口 +class ClassNameVideo(unittest.TestCase): + def setUp(self): + self.base_url = HOST_RES + '/className/video' + + def tearDown(self): + pass + + def test_ClassNameVideo_success(self): + getData = {'textName': '秋天的怀念', + 'press': '人民教育出版社', + 'subject': '语文', + 'gradeName': '7年级'} + r = requests.get(self.base_url, params=getData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'test_ClassNameVideo_success Error') + + def test_ClassNameVideo_noData(self): + getData = {'textName': '秋天 的怀念', + 'press': '人民教育出版社', + 'subject': '语文', + 'gradeName': '7年级'} + r = requests.get(self.base_url, params=getData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1000, 'test_ClassNameVideo_noData Error') + + +#获取知识点视频 +class PointVideo(unittest.TestCase): + def setUp(self): + self.base_url = HOST_RES + '/point/video' + + def tearDown(self): + pass + + def test_PointVideo_success(self): + getData = {'textName': '秋天的怀念', + 'press': '人民教育出版社', + 'subject': '语文', + 'gradeName': '7年级', + 'point':'说明文阅读5说明文的结构||议论文的定义和分类'} + r = requests.get(self.base_url, params=getData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'test_PointVideo_success Error') + + def test_PointVideo_noData(self): + getData = {'textName': '秋天的怀念', + 'press': '人民教育出版社', + 'subject': '语文', + 'gradeName': '7年级', + 'point': '说明文阅读5说明文的结构'} + r = requests.get(self.base_url, params=getData) + self.result_2 = r.json() + self.assertEqual(self.result_2['status'], 1000, 'test_PointVideo_noData Error') + + +#课程中心PK练习抽题接口 +class SubjectTest(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/subject/test/' + + def tearDown(self): + pass + + def test_SubjectTest_success(self): + getData = {'subjectName': '数学', + 'questionPoint': '二元一次方程||二元一次方程组的解', + 'gradeId': '10', + 'textName': '二元一次方程组'} + url = self.base_url + 'math' + r = requests.get(url, params=getData) + self.result_1 = r.json() + self.assertEqual(self.result_1['status'], 1, 'test_SubjectTest_success Error') + + +#巩固练习抽题接口 +class ConsolidationExercise(unittest.TestCase): + def setUp(self): + self.base_url = HOST_BOSS + '/consolidation/exercise' + + def tearDown(self): + pass + + def test_ConsolidationExercise_success(self): + getData = {'subjectName': '数学', + 'gradeId': '10', + 'secondPoint': '二元一次方程||二元一次方程组的解', + 'textName': '二元一次方程组', + 'difficultyLevel': '基础卷'} + r = requests.get(self.base_url, params=getData) + self.result = r.json() + self.assertEqual(self.result['status'], 1, 'test_ConsolidationExercise_success Error') + self.assertTrue(len(self.result['data']) > 1) + + + + diff --git a/test_suites/__pycache__/test_elecCard.cpython-36.pyc b/test_suites/__pycache__/test_elecCard.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9fba241918a8437dfc4fa9af549e3515b488a7a0 GIT binary patch literal 1208 zcmb`FJC74F5P5CR%Jm67~_<-r`P2b^IB6 z{tJ>@D*gf$Gu}0qNRf~bYkBP1@jU#EpN&TS?+>4|Z!sZ1$krFY{v}L(1VRu&bHZ>9 za#{o|ptuiVAF>ekk%+$#7Kx7N!WxT2^kD4>IwzCmhA^iv^;-~ztmzf`OfJbfFyT59^a=)T^myG7!IqBpa7XWo$m>v1JhOL< z)Mnw5zJj8rSX5oUUzLL0cBV{-KL%ZMF15B#_Bioco2roNUB;KIQnub7rNNMI$`93| z^`0a)smqnY7`Ar`a$c{Dv|Y%An!@|qn^WZAGao}e3Om6@b0p^fv%%}@1b{Kt80srg z133HZI6c!+=~OSX>LO21&iOJ^#fhrck{g|7n-%6uu@EQ@9CfpoEr_R^b9<{XEVeLU zY&`@)XhO&BP$SUyw+$c8zqbwA6wMU8O2Y2BO6!ftj6AL8S+U8br)nQN<8C9hJJNP! z(p4RZqPi#&6bM@NP&l*$K)AkX1Dk_3Af4%sjySVrDxb_pczmI@-eFWJwqV){a_&UGsHyz5f n)DC#VAK#4w<<4#acjz7U