我正在尝试测试我的Android应用程序并将数据添加到localhost上托管的数据库.我使用ngrok打开了一个隧道来访问存储在我本地计算机上的数据库.这是我的代码:
public class MainActivity extends FragmentActivity{
private DrawerLayout mDrawerLayout;
private ListView mDrawerList;
private ActionBarDrawerToggle mDrawerToggle;
private static String email;
// nav drawer title
private CharSequence mDrawerTitle;
// used to store app title
private CharSequence mTitle;
// slide menu items
private String[] navMenuTitles;
private TypedArray navMenuIcons;
private ArrayList<NavDrawerItem> navDrawerItems;
private NavDrawerListAdapter adapter;
private static final int RESULT_SETTINGS = 1;
private static String IP_ADDRESS="http://682dc364.ngrok.com/";
@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
Account[] accounts = AccountManager.get(getBaseContext()).getAccounts();
if(accounts.length …Run Code Online (Sandbox Code Playgroud) 我正在为我的方法之一编写 Java 单元测试。方法声明是这样的:
public int convertToInteger() throws InvalidRomanNumberException
{
int result=0;
BaseRomanNumeral num1, num2;
int i=0;
if(!validOperation())
throw new InvalidRomanNumberException();
}
Run Code Online (Sandbox Code Playgroud)
现在我正在尝试编写两个单元测试。一是测试是否抛出了正确的异常。另一种是确保写入转换发生。这就是我的测试用例的样子
@Test
public void testRomanNumberConversion() {
String romanValue="MCMII";
RomanNumber num=new RomanNumber(romanValue);
assertEquals(1903,num.convertToInteger());
}
@Test(expected = InvalidRomanNumberException.class)
public void testInvalidRomanNumberExceptionThrown() {
String romanValue="MCMIIII";
RomanNumber num=new RomanNumber(romanValue);
num.convertToInteger();
}
Run Code Online (Sandbox Code Playgroud)
对于这两个测试用例,我收到一个错误,指出 Unhandled InvalidRomanNumberException。仅当我向每个方法定义添加 throws InvalidRomanNumberException 时,此问题才能解决。但我认为这不是正确的方法。只是想和你们其他人确认一下,这里的标准是什么?我应该如何解决这个未处理的异常消息
我正在尝试在我的标记中添加dataLayer变量值,但是当我查看Chrome中我的控制台的Network选项卡中触发的标记时,我看到标记已经填充了未定义的值,即使控制台中的dataLayer对象已经正确的价值观.
这是我在GTM中的dataLayer变量:
这是我访问标记内部的值的方法:
ORDERID={{ORDERID}}
这就是我在控制台中看到的dataLayer值:
但是在网络选项卡中,我看到dataLayer变量未定义:
这就是我的Tag Manager的DataLayer在预览模式下的样子: