简单的接口测试登录实例

Posted 豺狼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单的接口测试登录实例相关的知识,希望对你有一定的参考价值。

测试项目的登录网址:http://wx.xiao-new.com/Login/Index,我觉得不同的项目都应该和开发打好关系(最少一个)可以从他们学到每个项目的接口的作用。

首先我们使用错误的登录用户名或密码,可以获取post请求(如果我们使用正确的用户名和密码登录成功后直接就是get到的请求):

技术分享

我们可以看到帐号信息和密码的加密方式(一般是md5加密)。

然后我们使用正确的用户名和密码登录成功后,可以看到第一个get的请求:

技术分享

最后直接上代码:

import requests

data = {
‘Account‘:"System",
‘Password‘:"4a7d1ed414474e4033ac29ccb8653d9b"
}

s = requests.session()
s.post(url=‘http://10.10.134.86:8083/Login/CheckLogin‘,data=data)
r=s.get(‘http://10.10.134.86:8083/Home/AccordionIndex‘)
print (r.text)

 运行结果如下(可看到这是首页的页面元素):

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>相寓信息管理系统</title>
    <link href="/Content/Images/favicon.ico" rel="shortcut icon" type="image/x-icon" />
    /*导航菜单begin====================*/
    <!-- header -->
    <div class="header">
        <div class="logo fleft">
            <img src="/Content/Images/loginlogo.png" />
        </div>
        <div id="Headermenu">
            <ul id="topnav">
                <li id="metnav_1" class="list">
                    <a id="nav_1" onclick="Replace();">
                        <span class="c1"></span>
                        系统首页
                    </a>
                </li>
                <li id="metnav_7" class="list droppopup">
                    <a id="nav_7">
                        <span class="c7"></span>快捷导航
                        <div class="popup">
                            <i></i>
                            <ul>
                                <li onclick="Shortcuts()">
                                    <img src="/Content/Images/Icon16/shortcuts.png" />快捷方式设置</li>
                                <div id="Shortcuts"></div>
                           </ul>
                        </div>
                    </a>
                </li>
                <li id="metnav_3" class="list droppopup">
                    <a id="nav_3">
                        <span class="c3"></span>帮助中心
                         <div class="popup">
                             <i></i>
                             <ul>
                                <li onclick="VideoCenter()">
                                     <img src="/Content/Images/Icon16/Video.png" />视频教程</li>
                                 <div id="Videos"></div>
                                 <li onclick="download()">
                                     <img src="/Content/Images/Icon16/download.png" />合同样稿下载</li>
                                 <div id="download"></div>
                <li id="metnav_2" class="list" onclick="SkinIndex()">
                    <a id="nav_2">
                        <span class="c2"></span>切换皮肤
                    </a>
                </li>
                <li id="metnav_4" class="list" onclick="IndexOut();">
                    <a id="nav_4">
                        <span class="c4"></span>
                        安全退出
                    </a>
                </li>
            </ul>
            <div class="rightMenu">
                <ul>
                    <li onclick="top.frames[tabiframeId()].Replace()">刷新当前</li>
                    <li onclick="ThisCloseTab()">关闭当前</li>
                    <li onclick="AllcloseTab()">全部关闭</li>
                    <li onclick="othercloseTab()">除此之外全部关闭</li>
                    <div class=‘m-split‘></div>
                    <li>退出</li>
                </ul>
            </div>
        </div>
    </div>
    <div class="mainPannel">
        <div class="navigation">
            <ul id="accordion" class="accordion">
            </ul>
        </div>
        <div id="overlay_navigation"></div>
        <div id="ContentPannel"></div>
    </div>
    <div id="footer" class="cs-south" style="height: 25px;">
        <div class="number" style="width: 30%; text-align: left; float: left; line-height: 25px;">
             技术支持:<a href="http://www.xiao-new.com" target="_blank" style="color: white;">上海家营物业管理有限公司</a>
        </div>
        <div class="number" style="width: 40%; text-align: center; float: left; line-height: 25px;">
            CopyRight ? 2010 - 2017
        </div>
        <div style="width: 30%; text-align: right; float: right;">
            <div style="padding-right: 0px;">
                <div title="在线用户(2)人" class="bottom_icon" style="padding-top:2px;">
                    <img src="/Content/Images/bottom_icon_usergroup.png" />
                </div>
                <div title="邮件消息" class="bottom_icon" style="padding-top: 2px;">
                    <img id="icon_email" src="/Content/Images/youjian.png" style="padding-top: 5px;" />
                </div>
                <div id="div_icon_message" title="即时消息" class="bottom_icon" style="position:relative;">
                    <img id="icon_message" src="/Content/Images/bottom_icon_message.png"style="position:relative;" />
                    <div id="SignalRCount" style="position:absolute;padding:2px 5px;background:red;top:-5px;right:-10px;font-size:8px;color:#fff;font-weight: bold;font-family:‘宋体‘;border-radius:10px 10px 10px 0;-moz-border-radius:10px 10px 10px 0;-webkit-border-radius:10px 10px 10px 0;z-index:1975;">0</div>
                </div>
                <div class="bottom_icon" style="padding-top: 2px;">
                    <img title="我的信息,账户:System(超级管理员)" src="/Content/Images/bottom_icon_userinfo.png" />
                </div>
            </div>
        </div>
        <div class="clear"></div>
    </div>

  





以上是关于简单的接口测试登录实例的主要内容,如果未能解决你的问题,请参考以下文章

简单的测试登录接口的脚本

Flask 编写http接口api及接口自动化测试

jmeter实例演示

如何简单设计接口测试用例

Jmeter笔记一个登录接口实例

一致性哈希算法PHP测试片段