单元测试应用程序生命周期事件

     2023-03-12     296

关键词:

【中文标题】单元测试应用程序生命周期事件【英文标题】:Unit testing application lifecycle events 【发布时间】:2011-04-27 08:32:40 【问题描述】:

我创建了一个继承 System.Web.UI.Page 的类。

在该类中,我覆盖了一些应用程序生命周期事件,例如 page_load 和 page_init。在调用这些事件的基础之前,我会检查会话值、cookie 和类似的东西。

我想对检查会话和 cookie 的方法进行单元测试。我已经能够模拟会话和 cookie 对象。是否可以对应用程序生命周期事件进行单元测试?还是我唯一的选择是完全重构类,以便从生命周期事件中调用的所有方法都在一个单独的类中?

【问题讨论】:

【参考方案1】:

如果您能够模拟相关对象,您可以直接调用生命周期方法。但我不知道这是否是个好主意。恕我直言,任何单个生命周期事件处理程序都应该执行多个任务,每个任务可能都应该委托给其他一些类 - 您应该对这些代码进行单元测试。

我的个人习惯是直接测试实用程序/服务/存储库代码,并将代码直接留在生命周期事件中,仅适用于集成测试,而不是单元测试。

【讨论】:

离子 - Routerlink 不触发生命周期事件

...Ionic与RouterLink一起使用的生命周期事件而苦苦挣扎。我的应用程序数据位于一个JSON文件中,该文件在页面加载时使用url参数呈现每个项目。我需要按钮来转到下一个或上一个项目并刷新页面内容,即:我在第1项(/ 查看详情

xamarin.forms 中的页面生命周期事件

...22:16:38【问题描述】:我刚刚开发了我的第一个xamarin.forms应用程序。我对xamarin.forms感到很兴奋,但我错过了一些活动。xamarin.formsContentPage中是否有任何页面生命周期事件?我知道这两个:protectedoverride 查看详情

是否有用于跟踪 ETW 生命周期事件的 Microsoft(内置)ETW 提供程序?

】是否有用于跟踪ETW生命周期事件的Microsoft(内置)ETW提供程序?【英文标题】:IsthereaMicrosoft(built-in)ETWProviderfortracingETWlifecycleevents?【发布时间】:2019-06-0323:28:03【问题描述】:我似乎找不到用于跟踪ETW生命周期事件的ETW提供... 查看详情

Server.Transfer 时未触发应用程序生命周期事件

】Server.Transfer时未触发应用程序生命周期事件【英文标题】:ApplicationLifecycleEventNotFiredwhenServer.Transfer【发布时间】:2010-07-2612:30:58【问题描述】:我有一个自定义重写模块,当传递特定的查询字符串参数时,我需要能够调用serve... 查看详情

以应用的生命周期来构建运维体系

...,开发和测试在不同的环境下进行各种类型的测试,比如单元测试、集成测试以及系统测试等等,这整个过程就是我们常说的持续集成。所以 查看详情

Flutter 监听 Stateless Widget 上的生命周期事件?

...elessWidget?【发布时间】:2021-02-1210:42:21【问题描述】:当应用程序处于后台/前台时,是否有任何解决方案可以监听StatelessWidget的生命周期事件?该特定屏幕上没有StatefulWidget。我正在使用Getx()控制器来观察数据变化。【问题讨 查看详情

ios程序的生命周期

...命周期都是指程序加载到程序结束这一段时间。  在iOS应用程序中,通过单击主页面上的图标的方式可以启动一个程序。单击后,系统会显示一个过渡界面,然后调用main()函数来加载程序。从这一刻开始,大量的初始化工作都... 查看详情

formik官方应用案例解析组件生命周期事件

...单组件,即使用其继承自React.Component组件,从而展示有关生命周期事件的基本使用。但是,也比较简单,只涉及到了两个事件: 查看详情

javarx事件总线,生命周期知道在应用程序组件之间传递数据(代码片段)

查看详情

如何在 Jest 单元测试中模拟在 `created` Vue 生命周期挂钩中调用的方法,而不使用`shallowMount` 中已弃用的`methods` 参数? [复制]

】如何在Jest单元测试中模拟在`created`Vue生命周期挂钩中调用的方法,而不使用`shallowMount`中已弃用的`methods`参数?[复制]【英文标题】:Howtomockmethodcalledin`created`VuelifecyclehookinJestunittestwithoutusingdeprecated`methods`paramin`shallowMount`?[dupli... 查看详情

通过 Cloudformation 将配方分配给 Opsworks 中的生命周期事件

...(Here)。我正在创建一个创建所有opsworks堆栈、层、实例和应用程序的c 查看详情

如何为不同环境的 SwiftUI App 生命周期应用程序运行 UI 测试?

】如何为不同环境的SwiftUIApp生命周期应用程序运行UI测试?【英文标题】:HowtorunUItestsforSwiftUIApplifecycleappswithdifferentenvironments?【发布时间】:2020-12-1913:50:59【问题描述】:我正在尝试弄清楚如何为使用“SwiftUI应用程序生命周期... 查看详情

切换系统菜单时的应用程序生命周期测试:onvisibilityChange:hidden 时屏幕变黑

】切换系统菜单时的应用程序生命周期测试:onvisibilityChange:hidden时屏幕变黑【英文标题】:Applicationlifecycletestwhentoggingsystemmenus:screengoesblackwhenonvisibilityChange:hidden【发布时间】:2018-12-2412:45:22【问题描述】:我正在钴11上集成youtu... 查看详情

maven生命周期与插件

...为3套:clean:清理工作default:核心工作,例如:编译、测试、打包、部署…site:生产报告、发布站 查看详情

15:高级篇-ctk事件与监听

...去、二三里个人微信号:iwaleon微信公众号:高效程序员生命周期层事件在Plugin生命周期的不同状态相互转换时,CTKPluginFramework会发出各种不同的事件,以供事先注册好的事件监听器处理,这些事件被称为“生命周期层事件”。CT... 查看详情

vue生命周期函数详解

 vue实例的生命周期1什么是生命周期(每个实例的一辈子)概念:每一个Vue实例创建、运行、销毁的过程,就是生命周期;在实例的生命周期中,总是伴随着各种事件,这些事件就是生命周期函数;生命周期:实例的生命周... 查看详情

ASP.NET 生命周期,PreRequestHandlerExecute 事件

】ASP.NET生命周期,PreRequestHandlerExecute事件【英文标题】:ASP.NETlifecycle,PreRequestHandlerExecuteEvent【发布时间】:2013-04-1309:52:48【问题描述】:我正在寻找能够处理我的请求的处理程序。我想知道请求是否要求静态资源(即css、js或... 查看详情

微信小程序生命周期学习笔记-组件

生命周期包含应用生命周期、页面生命周期和组件生命周期。现在我们来学习组件的生命周期。学习这一章节之前,需要先学习以下内容:1.小程序的组件、自定义组件2.页面节点树3.应用生命周期、页面生命周期(重点是探索的... 查看详情