Testing mobile applications: types, errors, systematic approach