创建基础编程题

考核范围:用于考核候选人基础编程能力,如数据类型、循环、递归、面向对象、继承、封装等知识的掌握。算法的考核也是可以通过该功能创建相应题目;

1、题目设置

题目描述:

题目内容(支持 Markdown 格式):你可以在这里清晰地描述你的具体题目内容,支持Markdown 格式并预览渲染后的展示效果。

考点备注(选填):你可以在这里备注题目的考察点以及解决方案,以便在评卷的时候可以查看,题目解析仅面试官可见。

建议分值:你可以根据题目的难易程度设定当前题目的分值。

能力维度(选填):你可以根据题目考察的范围,选择题目相关的能力维度(如,算法/CS基本功/编程语言/解决问题/基本能力)。

标签(选填):你可以给题目添加自定义标签,标记该题目考查的知识点,以方便对题目进行分类管理。

难度(选填):你可以设定题目的难易程度(简单/中等/困难)。

标题备注:标题备注仅方便面试官管理题目及组卷用,候选人答题区不显示,建议填写。正确的命名笔试题目名称,可以让你更好的管理公司笔试题库,我们建议使用题目考察要点来命名。

2、选择环境

选择题目是否需要自动判题,和题目支持的编程语言:

自动判题选项:

填写测试用例以启动自动判题:

  • 支持自动判题,可以节省面试官评卷的时间,可以同时题目可用于笔试和面试考核。
  • 选择的编程语言环境已集成测试用例框架,面试官创建题目时,可以直接使用。各个语言环境支持的测试框架可以通过环境介绍查看。
  • 支持自动判题语言环境:Java、Python2/3、C++、C、Golang、Ruby、JavaScript、PHP、C#、Lua。

禁用测试用例无需自动判题

  • 不支持自动判题,需要面试官人工阅卷评分,该类型题目主要用于面试考核,主要考核候选人的答题思路。
  • 选择环境:支持一个编程题支持多个语言。

3、代码编写

选择填写测试用例以启动自动判题:

进入第三步后,系统将自动加载已选择的编程语言环境。

总体介绍,整个代码编写区分为三部分:

  • 菜单区:题目内容、出题引导、文件树、答题区。
  • 题目内容:在步骤一完成编辑后,题目内容会在此处展示,便于面试官预览。
  • 出题引导:系统提供了默认的文件结构,面试官只要按照指引,就能快速创建一道编程题。
  • 文件树:展示项目文件目录结构,可以自定义创建符合题目结构的文件目录,同时文件树上还支持了只读、隐藏等功能。该功能会在高级应用中详细说明。
  • 答题区:当一个题目中,有个多个地方需要候选人编写代码,可以使用该功能;该功能会在高级应用中详细说明。
  • 代码区:在这里编写代码,支持代码自动补全。
  • 输出区:控制台、测试用例、shell。
  • 控制台:在创建题目时,可以用于调试题目。
  • 测试用例:对测试用例文件进行结构化展示,系统默认会提供个sample test、和一个 hidden test 文件,系统会对这两个文件的用例方法进行解析并展示。
  • shell:如题目需要使用到外部包,可以通过shell安装。

出题引导

如题目只要求候选人在单个类或者方法完成答题,可以使用答题引导完成出题即可,以java为例:

  • 填写代码片段:需要在这里定义好编程题的类或者方法,候选人在答题时,将从这里编写代码。运行测试用例时,将在运行该文件的方法,如果方法没有定义准确,将导致候选人无法完成答题。
  • 填写可见用例:通过编写代码完成测试用例的设置。候选人在答题时,可以通过该用例调试代码。运行用例时,将通过该文件的代码调用候选人的填写代码片段文件;
  • 填写隐藏用例:通过编写代码完成测试用例的设置。主要用于判题,防止候选人通过直接根据参数返回结果,候选人在答题时,无法查看到该用例内容。运行用例时,将通过该文件的代码调用候选人的填写代码片段文件;
  • 参考答案:可以将编程题的参考答案保存于此,方便其他面试官比对。该文件暂不支持直接运行,如需要验证参考答案请在 代码片段 处进行验证。

当题目支持多门语言,按照以上步骤分别为各种语言准备代码判断、测试用例就能完成出题。

  • 运行用例:在准备完代码片段、测试用例后,可以通过“运行用例”,验证题目是否设置正确

快速生成测试用例

支持测试用例的编程语言,基本支持快速生成测试用例功能,面试官无需再手动编写用例代码,只需要通过设置输入、输出参数等即可完成用例代码的生成:

目前仅MySQL、Verilog不支持,其他语言均支持快速生成。

一、点击“快速生成测试用例”

二、填写生成用例必须的参数

方法名:必填,函数方法名,候选人答题的方法入口,默认为solution,可以按照题目实际需要命名,必须包含字母,不能包含特殊符号,如分号、逗号等;

返回类型:必选,函数方法返回值,根据题目需要设置即可;

参数及类型:必填和必选,最多支持5个参数;

测试数据:需要参数值和返回值,参数值和参数数量必选一一对应。当有多个参数时,相应的参数值必须一一对应。参数值和返回值类型,一般输入格式有3种:

数据类型为整形、浮点等数值类型时,直接输入数字,如123;

数据类型为字符、字符传类型时,输入时,需要使用双引号,如“hello”

数据类型为一维数组或者多维数组时,输入时,需使用“[]”,如[1,2,3,4,5,5]或者[[1,2,3],[4,5,6]]

用例可见数量:设置本次快速生成用例的中,可供候选人阅读查看调试的测试用例数量,至少为1;

三、生成用例

完成以上参数值填写后,点击生成用例

自动在初始片段、可见用例、隐藏用例文件,自动生成相应代码

选择禁用测试用例无需自动判题

进入第三步后,系统将自动加载已选择的编程语言环境。以java为例

  • 填写代码片段:候选人将此文件编写答题代码。该文件为程序的入口,不要删除系统预置的代码,否则会引起代码无法运行;
  • 参考答案:可以将编程题的参考答案保存于此,方便其他面试官比对。该文件暂不支持直接运行,如需要验证参考答案请在 代码片段 处进行验证。

当题目支持多门语言,按照以上步骤分别为各种语言准备代码判断、测试用例就能完成出题。

  • 运行:在准备完代码片段、可以通过“运行”,查看代码输出结果

发布:题目创建时,默认作为“草稿”状态保持,需点击“发布”,题目才可以在组卷时使用

预览:完成题目创建后,可以通过预览,查看题目。

  • 面试官视觉:可以查看到,答题文件、可见用例文件、隐藏用例文件、参考答案
  • 候选人视觉:可以查看到,答题文件、可见用例文件

高级应用

文件树

当系统提供的默认文件无法满足题目需求时,可以使用文件树的功能,创建更丰富的题型,请查看:文件树使用说明

答题区设置

答题区功能是平台专门为笔面试场景推出的功能,主要是为了解决

  • 题目中,有多个答题点需要候选人补充代码,无法给到很好答题引导;
  • 题目中,有多个答题点,在评卷时,参考答案无法和候选人答题代码直接对比;

答题区支持设置实现功能、修改代码两种方式;

  • 实现功能:让候选人在指定区域,补充代码完成答题;
  • 修改代码:让候选人在指定的代码区域内,找出有问题的代码并修复;

详情请看:答题区使用说明