Make Raycast visible

I need some assistance making the Raycast appear visible. Here is what I have thus far:

using UnityEngine;
using System.Collections;
//Make Raycast visible
//Unity - Scripting API: Debug.DrawRay
public class CrosshairScript : MonoBehaviour {

	public Texture crosshair;
	
	Vector2 mousePos;
	RaycastHit hit;
	//bool ishit = false;
	
	// Use this for initialization
	void Start () {	
	Screen.showCursor = false; 
		//Debug.Log("adsf");
	}
	
	// Update is called once per frame
	void Update () 
	{
		if(Input.GetMouseButtonDown(0) && Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit, Mathf.Infinity))
		{
			if(hit.collider.gameObject.tag == "BullTest")
			{
				//ishit = true;
				Debug.Log ("Bull Hit!!");
			}
			//Make the Ray appear visible:
		Vector3 forward = transform.TransformDirection(Vector3.forward) * 10;
        Debug.DrawRay(transform.position, forward, Color.green);
		}
	}
	
	void OnGUI ()
	{
		mousePos = Input.mousePosition;
		GUI.Label(new Rect(mousePos.x - (crosshair.width / 2) + 3, Screen.height - mousePos.y - (crosshair.height / 2), crosshair.width, crosshair.height), crosshair);
	}
	
	void OnMouseOver() 
	{
       // Debug.Log("adsf");
    }
	
      
}

What am I missing?

You probably want to see where the ray hits:

Debug.DrawLine(Camera.main.ScreenPointToRay(Input.mousePosition),hit.point,Color.green);

Will only show in the Scene View (or in Game view if Gizmos is on).