web前端(未完)

来源:互联网 发布:荧光颜料淘宝 编辑:程序博客网 时间:2024/05/18 08:38
4. 有没有写过单元测试,用什么写的

Bower - 客户端代码包管理工具
Http-Server - 简单的本地静态web服务器
Karma - 单元测试工具
Protractor - 端到端 (E2E) 测试工具
单元测试:npm test会自动打开谷歌浏览器和火狐,点击debug、再打开控制台可以查看报错信息。测试成功时,命令行窗口会返回success信息。
npm run update-webdriver: 安装Protractor所需驱动

npm run protractor: 运行Protractor端到端测试
端到端测试:npm run update-webdriver、npm start、npm run protractor。测试成功时,命令行窗口会返回success信息。

注意:输入 npm start 后,应该另外开一个命令行窗口(不能将服务器关闭,否则无法测试),再输入 npm run protractor命令。

Jasmine是一个BDD(Behavior-driven development 行为驱动开发框架)开发框架,主要用来测试JavaScript代码,它不依赖于任何其他的javascript框架,也就是我們可以用它來作为js的单元测试框架,它不需要DOM,它有一个干净的,简单的语法让你可以轻松的编写测试。

Karma是一个基于Node.js的JavaScript测试执行过程管理工具(Test Runner)。该工具可用于测试所有主流Web浏览器,也可集成到CI(Continuous integration)工具,也可和其他代码编辑器一起使用。这个测试工具的一个强大特性就是,它可以监控(Watch)文件的变化,然后自行执行,通过console.log显示测试结果。

Jasmine是单元测试框架,本单将介绍用Karma让Jasmine测试自动化完成。Jasmine的介绍,请参考文章:jasmine行为驱动,测试先行

Protractor是AngularJS团队发布的一款开源的端到端web测试运行工具。它可以模拟用户的实际交互,帮助验证Angular应用的实际运行状况。Protractor使用Jasmine测试框架来定义测试用例。Protractor为不同的页面交互提供一套健壮的API。相对于其他的端到端的工具,Protractor有着自己的优势,它知道怎么和AngularJS的代码一起运行,特别是应对$digest循环。

5. 前端自动化工具,如何压缩代码
6. 说说IE6的兼容性问题
7. js的数据类型
8. 讲讲angular的特点。
  • MVVM 双向数据绑定(Model-View-ViewModel)model变化,view也变化

  • 模版 将html文件解析到DOM中

  • 模块化与依赖注入

  • 指令可以用来创建自定义的标签,也可以用来装饰元素或者操作DOM属性。

9. ES6的特点

箭头函数,默认参数,多行字符串,有let定义的变量,有class

10. 你还有什么要问的

回答:(1)公司的技术团队主要的人员构成是什么样的?
(2)自己如果有幸加入贵公司,负责的业务是什么?
(3)公司技术方面的发展平台是什么样的?
(4)公司后期的技术方面的发展方向是什么样的?

11. 列举一下常见的块元素和行元素(span属于行元素)
12. position:relative和absolute的区别
13. HTML5的优势
14. $this和this区别
15. 关于索引的知识
16. 说说闭包
17. es5和es6的区别
18. css选择器的权重
19. js的一些方法,类似于push
20. 说一说bs
21. 讲讲HTTP协议
22. 事件委托
22. 为什么把js放在页面底部
22. 如何实现一个圆,关于border_radius
22. 下围棋思路
22. 数据结构 二叉树 队列 栈
22.