robotium WIFI设置

来源:互联网 发布:监控设备无网络视频 编辑:程序博客网 时间:2024/06/05 15:39

目的:做移动自动化测试的时候,需要有断网情况的验证,但是robotium没有这个方法,只能自己写一个类,以下是解决办法!从一个博客上看到的代码。。。自己有思路但是还不太会写!

不过我动手实践了,可以成功,大家用robotium做自动化的可以使用这个办法哦!

代码贴出来:

注册wifi:

   <<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" >
    <</uses-permission>
    <<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" >
    <</uses-permission>
    <<uses-permission android:name="android.permission.WAKE_LOCK" >
    <</uses-permission>

wifi类:

import java.util.List;
import java.util.Scanner;

import android.content.Context;
import android.net.wifi.*;
import android.net.wifi.WifiManager.WifiLock;

public class WifiAdmin {
 private WifiManager wifiManager = null;

 public WifiAdmin(Context context) {
  wifiManager = (WifiManager) context
    .getSystemService(context.WIFI_SERVICE);

 }

 // 启动wifi
 public void openWifi() {
  if (!wifiManager.isWifiEnabled()) {
   wifiManager.setWifiEnabled(true);
  }

 }

 // 关闭wifi
 public void closeWifi() {
  if (wifiManager.isWifiEnabled()) {
   wifiManager.setWifiEnabled(false);
  }

 }

 // 获取网络状态
 public int fromWifiState() {
  int iWifiState = wifiManager.getWifiState();
  return iWifiState;

 }

}
测试类:

 public void testWifiState() {
  solo.assertCurrentActivity("进入首页", MainActivity.class);
  solo.clickOnView((Button) solo.getView(R.id.closeBtn));
  solo.sleep(6000);
  WifiAdmin wifiAdmin = new WifiAdmin(getActivity().getBaseContext());
  String strWifi = String.valueOf(wifiAdmin.fromWifiState());
  Log.i("wifi", "当前wifi状态为:" + strWifi);

 }

运行成功!

转载地址:http://blog.sina.com.cn/s/blog_c2b104bb01018xcl.html

0 0
原创粉丝点击