Example #1
0
 def run(self):
     list0 = util.util().getTeseCasesATX(self.j, isRunning=True)
     if len(list0):
         log.log().logger.info('case still running !')
     else:
         list = util.util().getTeseCasesATX(self.j)
         if len(list):
             log.log().logger.info('start test by single devices :%s ' %
                                   list[0][0])
             self.q.put(u"打点我是第%d个线程,ip: %s, 测试用例:%s" %
                        (self.t, self.j, list[0][0]))
             log.log().logger.info(u"打点我是第%d个线程,ip: %s, 测试用例:%s" %
                                   (self.t, self.j, list[0][0]))
             process().main(list[0])
             time.sleep(2)
         else:
             list2 = util.util().getTeseCasesATX(all=True)
             log.log().logger.info('current list lenth is: %s' % len(list2))
             if len(list2):
                 try:
                     case = list2[self.t]
                 except:
                     case = list2[0]
                     log.log().logger.info('current ip is : %s' %
                                           str(self.j))
Example #2
0
 def screenshot(self, driver, id, screenFileList, isError=False):
     result = '2'
     if isError:
         fileName, fileName1 = util.util().screenshot('error', id)
     else:
         fileName, fileName1 = util.util().screenshot('normal', id)
     log.log().logger.debug(fileName)
     driver.save_screenshot(fileName)
     screenFileList.append(fileName1)
     result = '1'
     return result, screenFileList
Example #3
0
 def take_screenshot(self, u, type, caseNo, screenFileList):
     fileName, fileName1 = util.util().screenshot(type, caseNo)
     image = u.screenshot()
     image.save(fileName)
     screenFileList.append(fileName1)
     result = '1'
     return result, screenFileList
Example #4
0
 def screenshot(self, driver, id, screenFileList, isError=False):
     result = 2
     if isError:
         fileName, fileName1 = util.util().screenshot('error', id)
     else:
         fileName, fileName1 = util.util().screenshot('normal', id)
     try:
         # print(fileName)
         driver.save_screenshot(fileName)
         screenFileList.append(fileName1)
         result = 1
     except requests.exceptions.ConnectionError as e:
         log.log().logger.error(e)
     except selenium.common.exceptions.WebDriverException as e:
         log.log().logger.error(e)
     return result, screenFileList
Example #5
0
 def runmain(self, test_suite_id, threadNum, runType):
     Hubs = hubs.hubs().showHubs(runType)
     if len(Hubs) == 0:
         log.log().logger.error('cannot run for no available hubs!')
     else:
         self.multipleRun(util.util().getTeseCases(test_suite_id),
                          threadNum)
         test_task_manage.test_task_manage().update_test_suite_check()
Example #6
0
 def getDevices(self):
     url = config.ATXHost + '/list'
     response, content = util.util().send(url)
     content = json.loads(content)
     deviceList = []
     for device in content:
         if device['present']:
             deviceList.append(device['ip'] + ':7912')
         else:
             log.log().logger.debug(device['ip'] + ' is not ready!')
     return deviceList
Example #7
0
    def screenshot(self, driver, id, screenFileList, isError=False):
        """
        Save current page as a screenshot.

        :param driver:
        :param id:  case id.
        :param screenFileList:  screenshot file list for this case.
        :param isError:  screenshot type, error or normal.
        :return:
        """
        result = '2'
        if isError:
            fileName, fileName1 = util.util().screenshot('error', id)
        else:
            fileName, fileName1 = util.util().screenshot('normal', id)
        log.log().logger.info(fileName)
        driver.save_screenshot(fileName)
        screenFileList.append(fileName1)
        if not isError:
            result = '1'
        return result, screenFileList
Example #8
0
 def runmain(self,test_suite_id,threadNum, runType ):
     if runType == 'Android' and isUseATX:
         Hubs = hubs.hubs().getDevices()
         log.log().logger.debug('Run type is ATX and usable devices are %s' %Hubs)
     else:
         Hubs = hubs.hubs().showHubs(runType)
     if len(Hubs) ==0:
         log.log().logger.debug('cannot run for no available hubs!')
     elif runType == 'Android' and isUseATX:
         self.atxMain()
     else:
         self.multipleRun(util.util().getTeseCases(test_suite_id),threadNum)
         test_task_manage.test_task_manage().update_test_suite_check()
Example #9
0
 def getDevicesList(self):
     url = config.ATXHost + '/list'
     response, content = util.util().send(url)
     content = json.loads(content)
     deviceLists = []
     for device in content:
         deviceList = {}
         if device['present']:
             deviceList["ip"] = device['ip'] + ':7912'
             deviceList["model"] = device['model']
             deviceLists.append(deviceList)
         else:
             log.log().logger.info(device['ip'] + ' is not ready!')
     return deviceLists
Example #10
0
def user_password():
    list = session.get('user', None)
    id = list[0]["id"]
    log.log().logger.info('id: %s' % id)
    info = request.values
    log.log().logger.info('info : %s' % info)
    password = viewutil.getInfoAttribute(info, 'password')
    log.log().logger.info('password : %s' % password)
    if len(password):
        md5Password = util.util().md5(password)
        log.log().logger.info('md5Password : %s' % md5Password)
        test_user_manage.test_user_manage().update_user_password(
            id, ['password'], [md5Password])
        result = jsonify({'code': 200, 'msg': '修改密码成功'})
    else:
        result = jsonify({'code': 500, 'msg': '密码不得为空!'})
    return result, {'Content-Type': 'application/json'}
Example #11
0
def add_user():
    list = session.get('user', None)
    info = request.values
    log.log().logger.info('info : %s' % info)
    username = viewutil.getInfoAttribute(info, 'username')
    password = viewutil.getInfoAttribute(info, 'password')
    log.log().logger.info('password : %s' % password)
    md5Password = util.util().md5(password)
    log.log().logger.info('md5Password : %s' % md5Password)
    result0 = test_user_manage.test_user_manage().new_user(
        username, md5Password)
    if result0:
        result = jsonify({'code': 200, 'msg': '新增成功'})
        return result, {'Content-Type': 'application/json'}
    else:
        result = jsonify({'code': 500, 'msg': '用户已存在!'})
        return result, {'Content-Type': 'application/json'}
Example #12
0
    def atxMain(self):
        q = queue.Queue()
        Hubs = hubs.hubs().getDevices()
        alllist = util.util().getTeseCasesATX(all=True)
        if len(Hubs) and len(alllist):
            count = 0
            threads = []
            for i in range(len(Hubs)):
                j = Hubs[i]
                threads.append(MyThread(q, i, j))
            for mt in threads:
                mt.start()
                log.log().logger.info("start time: %s" %time.ctime())

        elif len(alllist):
            log.log().logger.debug('no device is avaible!')
        else:
            log.log().logger.debug('no test case is needed!')
Example #13
0
def checklogin():
    username = request.values.get("username")
    password = request.values.get("password")
    log.log().logger.info('username : %s' % username)
    log.log().logger.info('password : %s' % password)
    if username == '' or password == '':
        result = jsonify({'msg': '用户名或密码不能为空'})
    else:
        #MD5加密密码
        md5Password = util.util().md5(password)
        log.log().logger.info('password : %s' % md5Password)
        #检查数据是否存在该用户
        list = test_user_manage.test_user_manage().checklogin(
            username, md5Password)
        log.log().logger.info('list : %s' % list)
        if (len(list) > 0):
            result = jsonify({'msg': '登录成功'})
            #登录成功设置会话
            session['user'] = list
        else:
            result = jsonify({'msg': '用户名或密码错误'})
    return result, {'Content-Type': 'application/json'}
Example #14
0
 def runmain(self, test_suite_id, threadNum, runType):
     Hubs = hubs.hubs().showHubs(runType)
     self.multipleRun(util.util().getTeseCases(test_suite_id), threadNum)
     test_task_manage.test_task_manage().update_test_suite_check()