Exemplo n.º 1
0
    def connect(self):
        os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8'

        conf = Initialize()

        db = cx_Oracle.connect(conf.dbuser, conf.dbpassword, conf.host)
        return db
Exemplo n.º 2
0
def doc_list(path=Initialize().datapath):
    dir_name = os.listdir(path)
    if dir_name.__len__() == 0:
        try:
            os.rmdir(path)
            logging.info(u'删除文件夹成功-' + path)
        except:
            raise Exception(u'删除文件夹失败,请查看文件权限')
    for i in range(dir_name.__len__()):
        if os.path.isdir(path + dir_name[i]):
            if dir_name[i] == 'SLNM_Script':
                pass
            else:
                doc_list(path + dir_name[i] + '\\')
        elif os.path.isfile(path + dir_name[i]):
            clear_doc(path + dir_name[i])
Exemplo n.º 3
0
    def testRouter(self):
        self.conf = Initialize()
        conf = self.conf
        # 参数
        # parmas = urllib.urlencode({'url': '/router/rest?appKey=00001&v=1.0&method=user.logon&format=json',
        #                            'params': '{"username": "******", "password": "******"}'})

        # 打开一个url的方法,返回一个文件对象
        # f = urllib.urlopen(conf.baseurl + "/router/post.jsp", parmas)
        f = urllib.urlopen(conf.baseurl + "/router/")

        # 取url返回的响应内容
        try:
            response = f.read()
            # response_to_json = json.loads(response)
            # error_flag = response_to_json['errorFlag']
        except:
            raise Exception('response : ' + response)

        # 断言
        self.assertTrue(response.__len__() > 0)
Exemplo n.º 4
0
 def setUp(self):
     self.conf = Initialize()
     self.driver = self.conf.start()
     self.verificationErrors = []
     pass
Exemplo n.º 5
0
    def testSponsorChange(self):
        driver = self.driver
        conf = self.conf
        conf.stateChange(driver)
        driver.implicitly_wait(10)

        # 读取配置文件-取state值
        conf = Initialize()
        state = conf.state

        # MM007 推荐组织调整-添加&审核
        # 选择运营支撑平台
        driver.find_element_by_id('topMenu_1100').click()
        # 指定元素:会员管理
        button = driver.find_element_by_id('left_menu_1210')
        # 指定元素:菜单
        menu = driver.find_element_by_class_name('nav-header')

        # 鼠标移动到会员管理上
        chain = ActionChains(driver)
        chain.move_to_element(button).perform()
        # 指定元素:推荐网络调整,并点击操作
        driver.find_element_by_xpath(
            '//li[@id="left_menu_2502"]/a/span').click()
        # 移开鼠标
        chain.move_to_element(menu).perform()
        time.sleep(1)
        # 切换至iframe
        driver.switch_to_frame('contentIframe2502')

        # 点击添加
        driver.find_element_by_id('btnAdd').click()
        driver.implicitly_wait(10)

        # 从数据库随机取出可用的会员编号和新推荐人
        member = Oradao.sqlDiy(
            Oradao(),
            'select c.member_no as newSponsor_no,b.member_no,b.create_date from mm_member a, mm_member b, mm_member c where a.id = b.placement_id and c.id = a.placement_id and a.placement_id is not null and a.placement_id !=b.sponsor_id and a.company_code=\''
            + state + '\' and b.company_code=\'' + state +
            '\'and c.company_code=\'' + state +
            '\'and to_char(b.create_date,\'yyyy-mm-dd\')>to_char(sysdate-3,\'yyyy-mm-dd\') order by b.create_date desc'
        )
        num = ranNo(0, member['MEMBER_NO'].__len__() - 1)
        member_no = member['MEMBER_NO'][num]
        newSponsor_no = member['NEWSPONSOR_NO'][num]

        # 在页面输入取到的数据
        driver.find_element_by_id('memberNo').send_keys(member_no)
        driver.find_element_by_name('parentNo').send_keys(newSponsor_no)

        # 点击保存
        driver.find_element_by_id('btnSubmit').click()
        time.sleep(2)

        # 按会员编号查询
        driver.find_element_by_name('sp_member.memberNo_EQ').send_keys(
            member_no)
        driver.find_element_by_id('btnSubmit').click()
        driver.implicitly_wait(10)

        # 统计查到多少条记录
        count = driver.find_elements_by_xpath(
            '//table[@id="contentTable"]/tbody/tr').__len__()

        # 从数据库取最新那条数据的创建时间
        sponsor_change = Oradao.sqlDiy(
            Oradao(),
            'select s.create_date,m.member_no,s.sponsor_id,s.status from mm_sponsor_ref_change s,mm_member m where s.member_id=m.id and m.member_no=\''
            + member_no + '\' order by s.create_date desc')
        createDate = sponsor_change['CREATE_DATE'][0].strftime(
            '%Y-%m-%d %H:%M:%S')

        # 循环取出各记录的创建时间,与数据库最新的对比,得到最新那条记录
        for i in range(1, count + 1):
            asCreateDate = driver.find_element_by_xpath(
                '//table[@id="contentTable"]/tbody/tr[' + str(i) +
                ']/td[5]').text
            # 先把创建时间后的空格过滤
            if asCreateDate.strip(' ') == createDate:
                break

        # 点击审核
        driver.find_element_by_xpath('//table[@id="contentTable"]/tbody/tr[' +
                                     str(i) + ']/td[9]/a[1]').click()
        time.sleep(2)

        # 选择通过 或 不通过
        check_num = ranNo(1, 2)
        driver.find_element_by_xpath(
            '//form[@id="inputForm"]/div[6]/div/input[' + str(check_num) +
            ']').click()
        time.sleep(2)

        # 点击保存
        driver.find_element_by_id('btnSubmit').click()
        time.sleep(2)

        # 审核后核对数据库该审核状态
        status = Oradao.sqlDiy(
            Oradao(),
            'select s.create_date,m.member_no,s.sponsor_id,s.status from mm_sponsor_ref_change s,mm_member m where s.member_id=m.id and m.member_no=\''
            + member_no + '\' order by s.create_date desc')
        if check_num == 1:
            self.assertEqual(int(status['STATUS'][0]), 1)
        else:
            self.assertEqual(int(status['STATUS'][0]), 0)
Exemplo n.º 6
0
        # load_case(ProductNewMSG),
        load_case(ProductMsgSearch),
        load_case(ProductSaleTax),
        load_case(MemberInfo),
        # load_case(MemberAdd),
        load_case(PlacementSelect),
        load_case(OrderChange),
        # load_case(OrderChangeAdd),
        load_case(OrderReturn),
        # load_case(OrderReturnCheck),
        load_case(OrderView),
        load_case(OrderSave)
    ])

    return suit


def load_case(name):
    return unittest.TestLoader().loadTestsFromTestCase(name)


if __name__ == "__main__":
    Initialize().set_build_number(sys.argv[1], True)
    reportFile = file(
        Initialize().datapath + sys.argv[1] + "\\ossMember_report.html", "wb")
    runner = HTMLTestRunner.HTMLTestRunner(stream=reportFile,
                                           title=u'测试结果',
                                           description=u'测试报告',
                                           version=sys.argv[1],
                                           env='production')
    runner.run(run_suit())
Exemplo n.º 7
0
    if dir_name.__len__() == 0:
        try:
            os.rmdir(path)
            logging.info(u'删除文件夹成功-' + path)
        except:
            raise Exception(u'删除文件夹失败,请查看文件权限')
    for i in range(dir_name.__len__()):
        if os.path.isdir(path + dir_name[i]):
            if dir_name[i] == 'SLNM_Script':
                pass
            else:
                doc_list(path + dir_name[i] + '\\')
        elif os.path.isfile(path + dir_name[i]):
            clear_doc(path + dir_name[i])


def clear_doc(file_name):
    now = time.time()
    file_time = os.stat(file_name).st_mtime
    # 文件修改时间超过当前时间一个月,则删除
    if now - file_time > 2592000:
        os.remove(file_name)
        logging.info(u'删除文件成功-' + file_name)
    else:
        pass


if __name__ == "__main__":
    Initialize().set_build_number(sys.argv[1], True)
    Initialize().log_config()
    doc_list()
Exemplo n.º 8
0
__author__ = 'Regend'


def run_suit():

    suit = unittest.TestSuite([
        load_case(BoIndex),
        # load_case(BoRegister),
        # load_case(BoOrderSave),
        load_case(BoOrderView),
        load_case(BoPlacement),
        load_case(BoSponsor)
    ])

    return suit


def load_case(name):
    return unittest.TestLoader().loadTestsFromTestCase(name)


if __name__ == "__main__":
    Initialize().set_build_number(sys.argv[1], True)
    reportFile = file(
        Initialize().datapath + sys.argv[1] + "\\backOffice_report.html", "wb")
    runner = HTMLTestRunner.HTMLTestRunner(stream=reportFile,
                                           title=u'测试结果',
                                           description=u'测试报告',
                                           version=sys.argv[1],
                                           env='production')
    runner.run(run_suit())
Exemplo n.º 9
0
 def __init__(self):
     self.verificationErrors = []
     self.conf = Initialize()
     self.driver = self.conf.start()
Exemplo n.º 10
0
# coding=utf-8
import unittest
import sys
from src.router.router import Router
from util import HTMLTestRunner
from util.initialize import Initialize


__author__ = 'Maggie'


def run_suit():

    suit = unittest.TestSuite([
        load_case(Router)
    ])

    return suit


def load_case(name):
    return unittest.TestLoader().loadTestsFromTestCase(name)

if __name__ == "__main__":
    Initialize().set_build_number(sys.argv[1], True)
    reportFile = file(Initialize().datapath + sys.argv[1] + "\\router_report.html", "wb")
    runner = HTMLTestRunner.HTMLTestRunner(stream=reportFile, title=u'测试结果', description=u'测试报告', version=sys.argv[1])
    runner.run(run_suit())