MAUI+MASA Blazor 兼容性测试报告及分析
1. 背景
MASA Blazor组件是一款基于Material Design设计和BlazorComponent的交互能力提供标准的基础组件库。提供如布局、弹框标准、Loading、全局异常处理等标准场景的预置组件。它旨在为开发者提供强大的用户界面和出色的用户体验。适用于PC及移动端。由于越来越多的.Net开发者开始使用MAUI+Blazor的框架来开发移动端应用,我们决定对MASA Blazor组件在MAUI框架进行兼容性测试,以确保其在移动端App中的兼容性和稳定性。为了保持客观的结果,我们使用第三方云测机构对我们的应用进行测试,并没有告知采用的架构及相关技术细节。
2. 目的
本报告的主要目的是总结我们对MASA Blazor组件在MAUI框架开发的移动端App上进行的测试结果。通过这次测试,我们的目标是验证MASA Blazor组件在MAUI框架下的表现,识别任何潜在的问题和缺陷,并提供改进和优化建议,以确保用户可以在各种移动设备上无缝使用该组件。
3. 测试目标
确保MASA Blazor组件在MAUI框架移动端App上的兼容性和稳定性,包括iOS与Android平台。
确保组件的功能和特性在移动设备上能够正确运行,不会导致任何错误或异常行为。
验证组件在不同移动设备的屏幕大小和分辨率下的适应性和可用性。
4. 预期结果
所有已知的功能和特性在移动端App上均能正常工作,并提供与Web应用程序相似的用户体验。
未发现严重的缺陷或崩溃问题,确保组件在移动设备上的稳定性和可靠性。
对于不同的移动设备,组件能够自动适应并正确显示,不会出现布局错乱或显示问题。
对于设备不存在长时间高CPU占用、高内存占用、高电池消耗等情况。
5. 测试策略及范围
首先我们准备了使用MASA Blazor+MAUI开发的一款包括Android与iOS的应用,并准备了覆盖我们业务的45个操作步骤。云测会采用自动脚本加人工复核的方式进行测试。
6. 测试结果与分析









下面是性能部分











我们对内存占用问题进行了分析,发现是部分页面后台上传了巨大无比的图片导致的,之后我们对图片体积进行了优化,优化之后的数据如下
这里可以看的图片优化之后内存占用明显减少,剩余的内存占用大多在图形部分(Graphics),并在页面切换后可以很快释放使用的内存。
另外最下面的柱状图显示,除了在蓝牙工作时会有部分明显电量消耗之外,其他浏览页面的时间段并没有明显高耗电现象,CPU占用也处在正常范围。


云测测试的手机型号
iphone设备

300台安卓设备见附件
300台安卓设备列表
7. 附加内容
同时我们的应用也通过了apple store的审核

部分国内厂家商店审核过程中的测试结果



8. 结尾
微软MAUI的出现,给广大.Net开发者提供了开发移动端应用的能力,而MAUI+Blazor技术更是大大简化了开发的流程并降低了技术门槛。
MASA Blazor作为Blazor家庭中广受欢迎的组件,无论在PC端还是移动端都可以提供良好的交互与性能,并提供了大量移动端专用组件。
我们日后会结合业务继续对MASA Blazor在移动端的其他组件进行测试,希望MASA Blazor可以成为MAUI开发的首选组件库!
MAUI+MASA Blazor 兼容性测试报告及分析的更多相关文章
- 在MAUI中使用Masa Blazor
Masa Blazor是什么 在此之前我们已经介绍过什么是Masa Blazor,以及如何使用Masa Balzor,如果还有不了解Masa Blazor的同学可以看我上篇文章[初识Masa Blaz ...
- MASA Blazor入门这一篇就够了
1.什么是Blazor? 有什么优势? ASP.NET Core Blazor 简介 Blazor 是一个使用 Blazor 生成交互式客户端 Web UI 的框架: 使用 C# 代替 JavaScr ...
- MAUI与Blazor共享一套UI,媲美Flutter,实现Windows、macOS、Android、iOS、Web通用UI
1. 前言 距离上次发<MAUI初体验:爽>一文已经过去2个月了,本计划是下半年或者明年再研究MAUI的,现在计划提前啦,因为我觉得MAUI Blazor挺有意思的:在Android.iO ...
- 初识MASA Blazor
MASA Blazor是一个Blazor的UI组件库.就像大家写前端熟知的Bootstrap, Ant Design一样. MASA Blazor官网地址:https://blazor.masasta ...
- 使用MASA Blazor开发一个标准的查询表格页
前言 大家好,我是开源项目 MASA Blazor 主要开发者之一,如果你还不了解MASA Blazor,可以访问我们的 官网 和博客 <初识MASA Blazor> 一探究竟.简单来说, ...
- 体验了一把最近很火的开源项目-MASA Blazor
前言 很惭愧直到去年底才接触到Blazor.那什么是Blazor呢?相信大家都看过官方文档的详细说明,另外MASA团队也有不错的说明介绍 .用官方的话说Blazor是一个交互式客户端Web UI的框架 ...
- Masa Blazor in Blazor Day
2022年第一场Blazor中文社区的开发者分享活动,我们的团队也全程参与其中,在议程中,也分享了我们团队的Blazor 管理后台模板,针对于Blazor,先科普一波,避免有些朋友不了解,Blazor ...
- Masa Blazor自定义组件封装
前言 实际项目中总能遇到一个"组件"不是基础组件但是又会频繁复用的情况,在开发MASA Auth时也封装了几个组件.既有简单定义CSS样式和界面封装的组件(GroupBox),也有 ...
- 如何使用MASA.Blazor
MASA.Blazor 是什么? 基于Material Design设计和BlazorComponent的交互能力提供标准的基础组件库.提供如布局.弹框标准.Loading.全局异常处理等标准场景的预 ...
- 学习MASA第一天:MASA Blazor TEST项目创建
个人博客地址: https://note.raokun.top 拥抱ChatGPT,国内访问网站:https://www.playchat.top 学习MASA第一天:MASA Blazor TEST ...
随机推荐
- [OpenCV-Python] 8 用滑动条做调色板
文章目录 OpenCV-Python:II OpenCV 中的 Gui 特性 8 用滑动条做调色板 8.1 代码示例 练习 OpenCV-Python:II OpenCV 中的 Gui 特性 8 用滑 ...
- JUC并发常用工具学习
今天主要来和大家分享一下JUC相关的一些简单知识,线程池文章就不介绍了,前面的文章有介绍,本文主要介绍Lock和认识synchronized和并发的一些工具类的使用. Lock 传统的锁有synchr ...
- git拉取代码总提示输入密码解决方法
公司用的gitlab,在项目拉取(git clone)和更新(git pull)的时候,每次都提示输入用户名密码,不胜其烦,解决方法如下: # 首先 git config --global crede ...
- Spring中TranslationDefinition接口规定的七种类型的事务传播行为及其意思
- 数据库定时备份linux篇
目录 1 序言 2 crond 相关知识点 2.1 crond 是什么? 2.2 crontab 进行定时任务设置 2.2.1 crontab 指令选项说明 2.2.2 crontab 指令使用格式 ...
- 2021-10-15:单词拆分。给定一个非空字符串 s 和一个包含非空单词的列表 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。说明:拆分时可以重复使用字典中的单词。你
2021-10-15:单词拆分.给定一个非空字符串 s 和一个包含非空单词的列表 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词.说明:拆分时可以重复使用字典中的单词.你 ...
- vue全家桶进阶之路37:Vue3 路由守卫
在 Vue.js 3.x 中,我们可以使用路由守卫来拦截路由的跳转,从而实现一些功能,例如:登录验证.页面权限控制等. Vue.js 3.x 中的路由守卫和 Vue.js 2.x 中的基本相同,都包含 ...
- django 与 vue 的完美结合
django 与 vue 的完美结合 最近接到一个任务,就是用 django 后端,前段用 vue,做一个普通的简单系统,我就是一搞后端的,听到 vue 也是比较震惊,之前压根没接触过 vue.看 ...
- Linux 内存管理 pt.3
哈喽大家好,我是咸鱼 在<Linux 内存管理 pt.2>中我们学习了多级页表和大页,我们知道了由于历史遗留的问题,Linux 的页通常为 4KB 这样就会导致一个页表里面会有特别多页,为 ...
- Python pip 修改镜像源为豆瓣源
配置文件 编辑配置文件 ~/.pip/pip.conf,添加内容如下: [global] index-url = https://pypi.doubanio.com/simple trusted-ho ...

